소개:
Enterprise WeChat에서만 액세스할 수 있고 Enterprise WeChat에서 승인된 사용자만 사용할 수 있는 작은 프로그램을 개발하세요.
(학습 영상 공유: 프로그래밍 영상)
문제 분석:
우선 해결해야 할 몇 가지 문제가 있습니다.
1 기업 WeChat에서만 사용할 수 있습니다. 일반 미니 프로그램
현재 상황을 판단하세요 작동 환경
2. 승인된 사용자만 이 미니 프로그램을 사용할 수 있습니다
권한 확인
1: 일반 위챗, 계정 + 비밀번호를 사용하여 로그인, 검토용으로만 계정 권한을 사용할 수 있습니다. 제한됨
2: 기업 위챗, 기업 ID 확인, 사용자 ID 인증을 거쳐 권한이 있는 사람만 사용 가능
3. 검색 제어
미니 프로그램 관리 백그라운드에서 "검색 불가"로 설정
4. 공유 제어
미니 프로그램에서 공유 닫기
OK, 위 사항을 달성하면 Enterprise WeChat에서 승인된 사용자만 Enterprise WeChat의 워크벤치에서 미니 프로그램을 볼 수 있습니다.
처리 프로세스
자, 이제 문제가 해결되었으니 시작하겠습니다.
1. 미니 프로그램의 기본 기능을 개발하고 검토를 위해 제출하세요
네, 잘 읽으셨습니다. 검토를 통과한 미니 프로그램만 Enterprise WeChat에 바인딩될 수 있기 때문에 먼저 검토를 위해 제출하세요. 따라서 먼저 미니 프로그램의 기본 기능을 만들고 일부 기능을 제한할 수 있습니다. 즉, 이 미니 프로그램을 먼저 선반에 올려 놓으세요. 동시에 불필요한 문제를 피하기 위해 미니 프로그램의 관리 배경에서 "검색이 허용되지 않음"을 설정하십시오.
2. 미니 프로그램을 Enterprise WeChat과 연결
Enterprise WeChat 백엔드 -> 애플리케이션 관리 -> 미니 프로그램 -> 미니 프로그램 연결 후 QR 코드를 스캔하고 팔로우하세요. 지침.
3. 연결된 애플릿의 비밀을 가져오고 표시 범위를 설정합니다.
방금 연결한 애플릿이 이전 단계의 애플릿 페이지에 표시됩니다. 클릭하여 입력하면 비밀 및 표시 범위가 표시됩니다.
이 비밀은 기업의 WeChat 데이터에 접근하기 위해 애플릿에서 사용하는 토큰과 동일합니다. 올바르게 보관하세요.
이 미니 프로그램을 볼 수 있는 사용자는 공개 범위에 따라 회사 WeChat 워크벤치에서 미니 프로그램을 볼 수 있습니다.
4. 미니 프로그램 수정
자, 이제 메인 이벤트 시간입니다.
4.1. 운영 환경 결정
미니 프로그램은 현재 운영 환경(일반 WeChat 또는 기업 WeChat)과 현재 미니 프로그램을 사용하는 사용자에게 사용 권한이 있는지 확인해야 합니다.
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
획득 이 인터페이스는 일반 WeChat에서 토큰을 획득하는 방법과 유사합니다.
그 중 corpid는 기업 WeChat 관리 배경 -> 내 비즈니스 -> 기업 정보 -> 기업 ID에 있으며, corpsecret은 이전 단계에서 미니 프로그램을 연결한 후 얻은 비밀입니다.
반환되는 내용은 다음과 같습니다.
{ "errcode": 0, "errmsg": "ok", "access_token": "xxxxxx", "expires_in": 7200 }
2. Get the 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.code입니다. passauthorization_code
다음과 같이 콘텐츠 반환:
{ "userid": "bottle", "session_key": "xxxxx", "corpid": "xxxxxx", "deviceid": "xxxxxx", "errcode": 0, "errmsg": "ok" }
여기의 corpid는 현재 사용자에게 권한이 있는지 처음에 확인하는 데 사용할 수 있습니다. 왜냐하면 개인이 어떤 회사를 사용하든 상관없이 Enterprise WeChat을 사용하고 이 애플릿을 사용하기 때문입니다. 결과가 반환됩니다. 인증한 회사의 ID로 해당 코드가 확인되었는지 확인해야 합니다. 그렇지 않은 경우 다음 단계로 이동하지 않고 권한을 반환하지 않습니다.
물론 작은 프로그램이 여러 회사와 연결된 상황을 처리하는 데 corpid를 사용할 수도 있지만 이는 또 다른 문제입니다. 여기서 간단히 언급하자면, 이 프로그램은 다른 회사를 위해 개발된 작은 프로그램이기 때문에 우리의 작은 프로그램도 두 회사와 연결되어 있습니다. 하나는 우리 회사이고 다른 하나는 다른 회사입니다. 이는 또한 테스트를 용이하게 하고 자체 테스터만 필요합니다. . 인증을 통해 테스트에 동일한 환경을 사용할 수 있습니다.
3. 사용자 정보 얻기(권한 결정)
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": [] }
알겠습니다. 권한이 있는지 여부에 따라 다른 작업을 수행할 수 있습니다. 여기서는 자세히 설명하지 않겠습니다.
참고 자료
Enterprise WeChat API(미니 프로그램): https://work.weixin.qq.com/api/doc#90000/90136/90289
Enterprise WeChat 인터페이스 디버깅 도구: https://work.weixin .qq.com/api/devtools/devtool.php
오류 코드 쿼리 도구: https://open.work.weixin.qq.com/devtool/query
관련 권장 사항: Mini 프로그램 개발
위 내용은 기업용 WeChat Mini 프로그램 개발 프로세스 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!