1、引用weixin-1.2.0.js 一定使用线上引用,npm install引用的报agentConfig is not a function;
2、vue ts在public -> index 中引用 < scri pt src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
后在跳转小程序vue文件中要定义 declare let wx: any; 否则项目运行及打包都报错Cannot find name ‘wx’ ;
3、跳转小程序必须先成功调用agentConfig,调用 wx.agentConfig需要引入 jwxwork sdk <script src="https://open.work.weixin.qq.com/wwopen/js/jwxwork-1.0.0.js"></script>

4、请求签名传的url不能转义、不加参数;
5、常遇错误代码:
4.1 40093 jsapi签名错误(检查签名和URL是否正确)
4.2 80001 可信域名不正确,或者无ICP备案(登录企微后台检查)


6、not allow to cross corp (跳转小程序报错)
登录企微后台检查企微应用是否关联小程序

7、数据请求注意异步影响,确保签名数据拿到后才执行下一步操作;
Vue中代码示例如下:
async toxiaochengxu(){
let url = window.location.href.split(’?’)[0];
axios.get(${process.env.VUE_APP_BASE_API}wx/ticket,{
params: {
url:url
}}
).then(response => {
if(response.status == 200){
let qiyeData = response.data.data;
wx.config({
beta: true,// 必须这么写,否则wx.invoke调用形式的jsapi会有问题
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: qiyeData.appId, // 必填,企业微信的corpID
timestamp: qiyeData.timestamp, // 必填,生成签名的时间戳
nonceStr: qiyeData.nonceStr, // 必填,生成签名的随机串
signature: qiyeData.signature,// 必填,签名,见 附录-JS-SDK使用权限签名算法
jsApiList: [‘ready’,‘agentConfig’] // 必填,需要使用的JS接口列表,凡是要调用的接口都需要传进来
});
wx.ready(function(){
wx.checkJsApi({
jsApiList: [‘agentConfig’,‘launchMiniprogram’], // 需要检测的JS接口列表
success:function(res) {
axios.get( ${process.env.VUE_APP_BASE_API}wx/ticket,{
params: { url:url, agent:1 }
}
).then(response2 => {
if(response2.status == 200){
let yingyongData = response2.data.data;
wx.agentConfig({
corpid: yingyongData.appId, // 必填,企业微信的corpid,必须与当前登录的企业一致
agentid: yingyongData.agentId, // 必填,企业微信的应用id (e.g. 1000247)
timestamp: yingyongData.timestamp, // 必填,生成签名的时间戳
nonceStr: yingyongData.nonceStr, // 必填,生成签名的随机串
signature: yingyongData.signature,// 必填,签名,见附录-JS-SDK使用权限签名算法
jsApiList: [‘launchMiniprogram’], //必填,传入需要使用的接口名称
success: function(res) {
wx.invoke(‘launchMiniprogram’, {
“appid” : “”, // 需跳转的小程序appid
“path” : “”, // 所需跳转的小程序内页面路径及参数。非必填
}, function(res) {
if(res.err_msg == “launchMiniprogram:ok”) {
// 正常
console.log(‘正常’);
} else {
// 错误处理
}
}
);
},
fail: function(res) {
if(res.errMsg.indexOf(‘function not exist’) > -1){
alert(‘版本过低请升级’)
}
}
});
}
})
}
});

          });}});

}

html中代码示例如下:
function toxiaochengxu(){
let url = window.location.href.split(’?’)[0];
let yingyongData = {};
let qiyeData = {};
$.ajax(
{
url: “http://ss.libang.dgtis.com/wxportal-api/wx/ticket”,
type: “get”,
dataType: “json”,
data: { url: url },
success: function (result) {
console.log(result);
qiyeData = result.data;
wx.config({
beta: true,// 必须这么写,否则wx.invoke调用形式的jsapi会有问题
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: qiyeData.appId, // 必填,企业微信的corpID
timestamp: qiyeData.timestamp, // 必填,生成签名的时间戳
nonceStr: qiyeData.nonceStr, // 必填,生成签名的随机串
signature: qiyeData.signature,// 必填,签名,见 附录-JS-SDK使用权限签名算法
jsApiList: [‘ready’,‘agentConfig’] // 必填,需要使用的JS接口列表,凡是要调用的接口都需要传进来
});
$.ajax(
{
url: “http://ss.libang.dgtis.com/wxportal-api/wx/ticket”,
type: “get”,
dataType: “json”,
data: { url: url,agent:1 },
success: function (result) {
console.log(result);
yingyongData = result.data;
wx.ready(function(){
wx.checkJsApi({
jsApiList: [‘agentConfig’,‘launchMiniprogram’], // 需要检测的JS接口列表
success: function(res) {
wx.agentConfig({
corpid: yingyongData.appId, // 必填,企业微信的corpid,必须与当前登录的企业一致
agentid: yingyongData.agentId, // 必填,企业微信的应用id (e.g. 1000247)
timestamp: yingyongData.timestamp, // 必填,生成签名的时间戳
nonceStr: yingyongData.nonceStr, // 必填,生成签名的随机串
signature: yingyongData.signature,// 必填,签名,见附录-JS-SDK使用权限签名算法
jsApiList: [‘launchMiniprogram’], //必填,传入需要使用的接口名称
success: function(res) {
wx.invoke(‘launchMiniprogram’, {
“appid” : “”, // 需跳转的小程序appid
“path” : “”, // 所需跳转的小程序内页面路径及参数。非必填
}, function(res) {
if(res.err_msg == “launchMiniprogram:ok”) {
// 正常
console.log(‘正常’)
console.log(‘launchMiniprogram:ok’)
} else {
// 错误处理
}
}
);
},
fail: function(res) {
if(res.errMsg.indexOf(‘function not exist’) > -1){
alert(‘版本过低请升级’)
}
}
});
}
});

                     });},error: function (xhr, status, p3, p4) {}});},error: function (xhr, status, p3, p4) {}});
}

企业微信跳转小程序注意事项相关推荐

  1. app中使用企业微信sdk分享小程序报错:小程序路径错误,加载超时 解决办法。

    问题描述: 在app中,需要调用企业微信skd,分享小程序给客户,客户打开小程序. 如果客户直接是企业微信中的,可以在企业微信中打开小程序. 但是,如果客户是微信中,用户在微信中打开小程序就报错. i ...

  2. 如何做直播?企业微信直播和小程序直播2个工具够用了!

    直播获客已成为2020年的趋势,便捷的直播工具不可或缺.企业微信直播和小程序直播免费.不用安装其他额外的APP.无需注册.获客能力强等特性成为商家直播的必备工具. 企业微信直播 可满足学校为学生提供线 ...

  3. Android企业微信分享到小程序

    1.官方文档 Android应用 - 接口文档 - 企业微信开发者中心https://developer.work.weixin.qq.com/document/path/91196 2.创建应用 登 ...

  4. 企业微信如何关联小程序?

    我们在日常使用微信时,经常会用到小程序功能,直接从微信中打开第三方页面,很是方便,那么自从企业微信与微信打通之后,我们该如何将小程序与企业微信联系起来使用呢? 其实,在企业微信中,我们也可以发送小程序 ...

  5. python小程序代码50 到100行-Python代码不到四十行简单暴力,微信跳一跳小程序轻松过万...

    群内不定时分享干货,包括最新的python企业案例学习资料和零基础入门教程,欢迎初学和进阶中的小伙伴入群学习交流 最近微信有个小程序,并不知道大家有没有被这个游戏给刷屏,这个游戏就是跳一跳 今天就用P ...

  6. 企业微信配置部署小程序流程

    1. 进入企业微信后台,点击进入应用管理. 2. 点击创建应用(支持小程序). 3. 上传应用logo图片,应用名称,可见范围(选择可见成员). 4. 完成以上操作,可获取agentId,secret ...

  7. 企业微信中授权小程序

    授权的时候先判断当前小程序运行环境 使用企业微信专有接口wx.getSystemInfo if (res["environment"]=='wxwork') {// 企业微信环境w ...

  8. 微信跳一跳高分系列三:用 adb 破解微信跳一跳小程序

    写在前面:网上关于微信跳一跳的文章已有很多,写这篇的目的是对 adb 工具的一个熟悉过程,也是对未入门的新朋友的一个引导 步骤: 1.保存当前跳一跳页的截图到手机 adb shell screenca ...

  9. 企业微信裂变系统小程序功能模块源码1.0.3

    介绍: 版本号:1.0.3 – 标准版无限开 [优化]PC后台导航管理.广告管理选择网站链接影响样式问题: 版本号:1.0.2 – 标准版无限开 提示:应用升级后,小程序需要重新提交发布 [修复]前端 ...

最新文章

  1. 跨年之际,中文版畅销书《TensorFlow深度学习实战大全》分享,直接送!
  2. 探索强化学习算法背后的思想起源!
  3. 一周一论文(翻译)——[VLDB 18] Chi:分布式流处理系统下可扩展的、可编程的控制计划模块
  4. 命令python所在的驱动器和文件夹_Python读取不同本地驱动器位置的文件
  5. php5.6.11 openssl安装
  6. mysql注入 xfkxfk_WSS最新版多处SQL注入直接获取数据三(官方demo演示及快速定位漏洞技巧)...
  7. java用户登录记住密码_java项目中登陆时记住密码
  8. linux 下 libpcap 简单使用
  9. python可以手眼定标吗_手眼标定 相关实例(示例源码)下载 - 好例子网
  10. AI产品开发的核心原则:以研究为核心驱动
  11. 使用iMazing创建配置文件时的几个重要首选项组
  12. OpenProj: The OpenSource Solution for Managing Your Projects
  13. html js 导出excel文件怎么打开文件,js导出excel文件的简洁方法(推荐)
  14. Linux系统下的JDK_11下载安装与环境配置
  15. GD32F103RC官方移植IAR
  16. ReportMachine
  17. python编程实战(三):暴力破解WIFI密码!亲测运行有效!
  18. 一个专业搬砖人的幻想:全国实现旬休制度
  19. java 最大素数,JAVA计算指定上限的最大素数
  20. 关于solidworks+workbench的参数化建模分析的一点心得1

热门文章

  1. 健康无需千金换,Misfit新品运动手环Flare来了
  2. vue.js学习笔记 from coderwhy
  3. ASRock is Challenging reviewers with their own test of ARC A380 graphics card【外媒VedioCardz报道(手工翻译)】
  4. 【hdu 4333】Revolving Digits
  5. 【Vue+Element-ui】在elment-form中使用rulers检验number踩坑
  6. 利用GoogleApi根据经纬度查询地名,和根据地名查询经纬度
  7. xshell_7下载安装以及评估期已过的解决办法
  8. CentOS8查看防火墙状态,开启/关闭防火墙
  9. Django Awesome-Django 优秀资源大全
  10. Oracle 列转行 (列行不确定) 解决方法