Heim  >  Artikel  >  WeChat-Applet  >  WeChat-Applet-Entwicklungsprozess für Unternehmen

WeChat-Applet-Entwicklungsprozess für Unternehmen

coldplay.xixi
coldplay.xixinach vorne
2021-04-27 10:11:232810Durchsuche

WeChat-Applet-Entwicklungsprozess für Unternehmen

Artikelverzeichnis

    • Hintergrund
    • Problemanalyse
    • Verarbeitungsprozess
      • 1. Mini-Programm, grundlegende Funktionsentwicklung, zur Überprüfung einreichen
      • 2. Enterprise WeChat verbundenes Miniprogramm
      • 3. Associate das Geheimnis des Mini -Programms erhalten, den sichtbaren Bereich
      • 4 festlegen, das Mini -Programm
        • 4.1 ändern, die laufende Umgebung
        • 4.2, Berechtigungsüberprüfung
    • Referenzen

bestimmen

Zugehörige kostenlose Lernempfehlungen:

Tutorial zur WeChat-Miniprogrammentwicklung

Hintergrund

Auf dieses Miniprogramm kann nur im Unternehmens-WeChat zugegriffen werden und nicht über normales WeChat. Nur autorisierte Benutzer in Enterprise WeChat können dieses Miniprogramm verwenden.

Der Grund, warum ich einen solchen Prozess organisieren muss, ist, dass die Dokumente auf WeChat zu verstreut und unordentlich sind. Außerdem hat es lange gedauert, bis ich diesen Prozess in Ordnung gebracht habe.

Problemanalyse

Zuallererst gibt es mehrere Probleme, die gelöst werden müssen:

1. Es kann nur im Unternehmens-WeChat verwendet werden und kann nicht in gewöhnlichen Miniprogrammen verwendet werden

Bestimmen Sie die aktuelle Betriebsumgebung

2. Nur autorisierte Benutzer können dieses Miniprogramm verwenden.

Berechtigungsüberprüfung. Unternehmens-ID überprüfen, Benutzer-ID überprüfen, ja. Nur Berechtigungen sind zulässig im Miniprogramm

OK, machen Sie die oben genannten Schritte. In einigen Punkten wird festgestellt, dass nur autorisierte Benutzer in Enterprise WeChat das Miniprogramm auf der Workbench von Enterprise WeChat sehen können.

Verarbeitungsprozess

Okay, jetzt, da das Problem geklärt ist, können wir loslegen.

1. Entwickeln Sie die Grundfunktionen des Miniprogramms und reichen Sie es zur Überprüfung ein

Ja, Sie haben richtig gelesen, reichen Sie es zuerst zur Überprüfung ein, denn nur Miniprogramme, die die Überprüfung bestehen, können an Enterprise gebunden werden WeChat. Machen Sie daher zunächst die Grundfunktionen des Miniprogramms und schränken Sie einige Funktionen ein. Kurz gesagt, lassen Sie dieses Miniprogramm zuerst in die Regale. Stellen Sie gleichzeitig im Verwaltungshintergrund des Miniprogramms „Suchen nicht zulässig“ ein, um unnötigen Ärger zu vermeiden.

2. Verknüpfen Sie das Mini-Programm mit Enterprise WeChat

Geben Sie das Enterprise WeChat-Backend ein –> Um den QR-Code zu scannen und den Anweisungen zu folgen, tun Sie es einfach. 工作台 看到该小程序。

处理流程

好,既然问题已经明确了,那我们就搞起。

1、小程序基础功能开发,提交审核

对,没看错,先提交审核,因为只有审核通过的小程序才能被企业微信绑定。所以,先把小程序的基础功能做出来,可以限制一部分功能,总之,就是先让这个小程序上架。同时,在小程序的管理后台设置「不允许被搜索」,避免不必要的麻烦。

2、企业微信关联小程序

进入企业微信后台 -> 应用管理 -> 小程序 -> 关联小程序,然后使用小程序管理员的微信扫码,按照指引操作即可。

3、获取关联小程序的 Secret,设置可见范围

上一步的小程序页面会出现刚才关联的小程序,点击进入,然后就看到 secret 及可见范围。

这个 secret 相当于该小程序访问该企业微信数据的令牌,请妥善保存。

可见范围就是授权,哪些用户能看到这个小程序,被设置可见的人将会在自己企业微信的工作台看到该小程序。

4、修改小程序

好了,到重头戏了。

4.1、判断运行环境

小程序需要判断当前的运行环境(普通微信 or 企业微信),需要判断使用当前小程序的用户是否有权限使用。

var isWxWork = false;wx.getSystemInfo({
  success(res) {
    console.log(res.environment);

    isWxWork = res.environment == 'wxwork';
    if (!isWxWork) {
        // 当前环境不是企业微信,怎么处理你随便
        return;
    }
    
    // 当前环境是企业微信,执行登陆,获取用户 code,用于后面的权限校验
    wx.qy.login({
      success: function (res) {
        if (res.code) {
            console.log(res.code);
            
            // 这里可以将 res.code 通过请求发送给后台,让后台做权限校验
        } else {
            console.log('登录失败!' + res.errMsg);
        }
      }
    });
  }})

4.2、权限校验

后台需要调用以下几个接口来进行权限校验。

1、获取 access_token

https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=xxxx&corpsecret=xxxx

请求方式:GET

这个接口和普通微信获取 token 的方法类似。

其中,corpid 在企业微信管理后台->我的企业->企业信息->企业ID;corpsecret 就是我们上一步关联小程序后获取的 secret。

返回内容如下:

{
    "errcode": 0,
    "errmsg": "ok",
    "access_token": "xxxxxx",
    "expires_in": 7200}

2、获取 userid

https://qyapi.weixin.qq.com/cgi-bin/miniprogram/jscode2session?access_token=xxx&js_code=xxx&grant_type=authorization_code

请求方式:GET

其中,access_token 是我们前一步 gettoken 获取到的;js_code 是前面判断运行环境时获取到的 res.codegrant_type 固定传 authorization_code

返回内容如下:

{
    "userid": "bottle",
    "session_key": "xxxxx",
    "corpid": "xxxxxx",
    "deviceid": "xxxxxx",
    "errcode": 0,
    "errmsg": "ok"}

这里的 corpid 可以用来初步校验当前用户是否有权限,因为无论哪个公司的人,只要他用企业微信,使用这个小程序,都会返回这样的结果,你需要根据 corpid 是否是你授权的企业的ID来校验,如果不是,直接返回无权限就可以,不用进行下一步。

当然 corpid

3. Rufen Sie das Geheimnis des zugehörigen Applets ab und legen Sie den sichtbaren Bereich fest.

Das gerade verknüpfte Applet wird auf der Applet-Seite im vorherigen Schritt angezeigt. Anschließend wird das Geheimnis angezeigt und sichtbare Reichweite.

Dieses Geheimnis entspricht dem Token, mit dem das Applet auf die WeChat-Daten des Unternehmens zugreift. Bitte bewahren Sie es ordnungsgemäß auf. 🎜🎜Der Sichtbarkeitsbereich ist die Berechtigung, welche Benutzer dieses Miniprogramm sehen können. Diejenigen, die auf Sichtbarkeit eingestellt sind, sehen das Miniprogramm auf ihrer Unternehmens-WeChat-Workbench. 🎜

4. Ändern Sie das Miniprogramm

🎜Okay, es ist Zeit für das Hauptereignis. 🎜

4.1. Bestimmen Sie die Betriebsumgebung

🎜Das Miniprogramm muss die aktuelle Betriebsumgebung (normales WeChat oder Unternehmens-WeChat) bestimmen und ob der Benutzer, der das aktuelle Miniprogramm verwendet, die Berechtigung zur Verwendung hat. 🎜
https://qyapi.weixin.qq.com/cgi-bin/user/get?access_token=xxx&userid=xxx

请求方式:GET

4.2. Berechtigungsüberprüfung

🎜Der Hintergrund muss die folgenden Schnittstellen zur Berechtigungsüberprüfung aufrufen. 🎜🎜1. Access_token erhalten🎜
{
    "errcode": 0,
    "errmsg": "ok",
    "userid": "xxx",
    "name": "xxx",
    "department": [],
    "position": "",
    "mobile": "xxx",
    "gender": "2",
    "email": "",
    "avatar": "http://p.qlogo.cn/bizmail/xxx/0",
    "status": 1,
    "isleader": 0,
    "extattr": {
        "attrs": []
    },
    "telephone": "",
    "enable": 1,
    "hide_mobile": 0,
    "order": [],
    "qr_code": "https://open.work.weixin.qq.com/wwopen/userQRCode?vcode=xxx",
    "alias": "",
    "is_leader_in_dept": []}
🎜Diese Schnittstelle ähnelt der Methode zum Erhalten von Token auf gewöhnlichem WeChat. 🎜🎜Unter diesen befindet sich corpid im WeChat-Management-Hintergrund des Unternehmens –>Mein Unternehmen –>Unternehmensinformationen – >Unternehmens-ID ist das, was wir nach der Zuordnung haben Das Miniprogramm im vorherigen Schritt Das erhaltene Geheimnis. 🎜🎜Der zurückgegebene Inhalt lautet wie folgt: 🎜
{
    "errcode": 60011,
    "errmsg": "no privilege to access/modify contact/party/agent , hint: [1564556097_7_8d45297bd21be3702ff430560e1f0652], from ip: 118.113.1.217, more info at https://open.work.weixin.qq.com/devtool/query?e=60011",
    "department": [],
    "order": [],
    "is_leader_in_dept": []}
🎜2. Holen Sie sich die Benutzer-ID🎜rrreee🎜Unter anderem wird access_token durch gettoken im vorherigen Schritt abgerufen; Bei der Beurteilung der laufenden Umgebung ist der grant_type so festgelegt, dass er authorization_code übergibt. Der zurückgegebene Inhalt lautet wie folgt: 🎜rrreee🎜 Das corpid hier Es kann verwendet werden, um zunächst zu überprüfen, ob der aktuelle Benutzer über Berechtigungen verfügt, denn egal welches Unternehmen jemand verwendet, solange er Enterprise WeChat verwendet und dieses Applet verwendet, wird ein solches Ergebnis zurückgegeben . Sie müssen überprüfen, ob corpid die ID des autorisierten Unternehmens ist. Wenn nicht, geben Sie einfach keine Erlaubnis zurück, ohne mit dem nächsten Schritt fortzufahren. 🎜🎜Natürlich kann corpid auch für Situationen verwendet werden, in denen ein kleines Programm mit mehreren Unternehmen verknüpft ist, aber das ist ein anderes Problem. Lassen Sie mich das hier kurz erwähnen, da es sich um ein kleines Programm handelt, das für andere Unternehmen entwickelt wurde. Unser kleines Programm ist auch mit zwei Unternehmen verbunden, eines ist unser Unternehmen und das andere ist das andere Unternehmen. Dies erleichtert auch unsere Tests und erfordert nur unsere eigenen Tester Durch die Autorisierung können sie genau dieselbe Umgebung zum Testen verwenden. 🎜🎜3. Benutzerinformationen einholen (Berechtigung ermitteln)🎜
https://qyapi.weixin.qq.com/cgi-bin/user/get?access_token=xxx&userid=xxx

请求方式:GET

其中,access_token 是我们前一步 gettoken 获取到的;userid 就是我们上一步获取到的 userid

返回内容如下:

  • 有权限
{
    "errcode": 0,
    "errmsg": "ok",
    "userid": "xxx",
    "name": "xxx",
    "department": [],
    "position": "",
    "mobile": "xxx",
    "gender": "2",
    "email": "",
    "avatar": "http://p.qlogo.cn/bizmail/xxx/0",
    "status": 1,
    "isleader": 0,
    "extattr": {
        "attrs": []
    },
    "telephone": "",
    "enable": 1,
    "hide_mobile": 0,
    "order": [],
    "qr_code": "https://open.work.weixin.qq.com/wwopen/userQRCode?vcode=xxx",
    "alias": "",
    "is_leader_in_dept": []}
  • 无权限
{
    "errcode": 60011,
    "errmsg": "no privilege to access/modify contact/party/agent , hint: [1564556097_7_8d45297bd21be3702ff430560e1f0652], from ip: 118.113.1.217, more info at https://open.work.weixin.qq.com/devtool/query?e=60011",
    "department": [],
    "order": [],
    "is_leader_in_dept": []}

OK,后面根据有权限还是无权限,执行不同的操作就可以了,这里不再赘述。

相关免费学习推荐:微信小程序开发

Das obige ist der detaillierte Inhalt vonWeChat-Applet-Entwicklungsprozess für Unternehmen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen