第三方应用开发 已关联小程序
wx.qy.login({
success: function(res) {
if (res.code) {
wx.request({
url: 'https://xx.xxx.com/api.html',
method:'post',
data: {method:'usermp.getSession',code: res.code},
success(res) {
var data = res.data.data;
console.log(data); //返回正常数据 有userid,open_userid
wx.qy.getEnterpriseUserInfo ({
success: function(res) {console.log(res); } ,
fail:function(res){console.log('fail=',res)},
complete:function(res){console.log(res);}
});
}
})
} else {console.log('登录失败!' + res.errMsg)}}
调用 qy.getEnterpriseUserInfo时就提示 :fail:not allow to cross corp
你好,看下使用的suiteaccesstoken是否是第三方小程序获取的token,看这个报错是跨企业调用
就目前我的解决方案是这样的。
首先确保登陆流程
1. wx.qy.login拿到code给后端
2.后端调接口code2Session,并能拿到userID等信息以确保登陆成功
然后我调用的是selectCorpGroupContact这个接口。
我们开发的是第三方应用的小程序。看目前的现象(没有仔细测试)如果你第三方应用的服务商是企业A,你在A中使用这个第三方应用调接口也会报跨企业错误。可以注册一个测试企业B把应用注册到测试企业B。然后测试企业B使用这个应用的时候需要服务商A购买接口给测试企业B用(免费,在服务商A的后台买),买的时候需要填测试企业B的corpID。然后就能调用了。最后插一句,要想获取上下游的通讯录还需要应用共享,但是应用没上架没法共享,这个功能压根不能测,李梨园商铺。