微信js sdk动态引用
一般情况下,微信的js-sdk只需要直接引用script即可
<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
但是有的时候,当我们的网页访问的环境多样的时候,比如APP内部,手机浏览器时候,并不需要引用这个js
甚至都不需要初始化微信js-sdk的环境:例如签名等操作
那么首先得区分一下当前的网页环境是否是微信浏览器,如下:
/**
* 是否是微信浏览器内
*/
IsWeiXinBrowser() {
var ua = navigator.userAgent.toLowerCase();
var isWeixin = ua.indexOf("micromessenger") != -1;
if (isWeixin) {
return true;
} else {
return false;
}
}
然后,再加载微信的js-sdk
if (this.IsWeiXinBrowser) {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "https://res.wx.qq.com/open/js/jweixin-1.2.0.js";
document.getElementsByTagName("head")[0].appendChild(script);
script.onload = () => {
// 需要初始化sdk环境,等等...
};
}
onload函数里面通常就是获取签名和初始化wx
let wxConfig = {
debug: false,
appId: config.appId,
timestamp: config.timestamp,
nonceStr: config.nonceStr,
signature: config.signature,
jsApiList: [
"checkJsApi",
"onMenuShareTimeline",
"onMenuShareAppMessage",
"onMenuShareQQ",
"onMenuShareWeibo"
]
};
wx.config(wxConfig);
这里贴一段初始化分享功能的代码,其他功能请参考sdk文档,config对象需要后端支持返回签名结果。
以上只是部分代码,仅供参考!
微信js sdk动态引用的更多相关文章
- 实战微信JS SDK开发:贺卡制作与播放(1)
前段时间忙于CanTK 2.0的开发,所以博客一直没有更新.CanTK 2.0主要增强了游戏和富媒体的开发,现在编码和测试基本完成了,等文档完成了再正式发布,里面有不少激动人心的功能,等发布时再一一细 ...
- 微信JS SDK接入的几点注意事项
微信JS SDK接入,主要可以先参考官网说明文档,总结起来有几个步骤: 1.绑定域名:先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”.备注:登录后可在“开发者中心”查看对 ...
- 微信js sdk上传多张图片
微信js sdk上传多张图片,微信上传多张图片 该案例已tp3.2商城为例 直接上代码: php代码: public function ind(){ $appid="111111111111 ...
- 微信JS SDK配置授权,实现分享接口
微信开放的JS-SDK面向网页开发者提供了基于微信内的网页开发工具包,最直接的好处就是我们可以使用微信分享.扫一扫.卡券.支付等微信特有的能力.7月份的时候,因为这个分享的证书获取问题深深的栽了一坑, ...
- 调用微信js sdk
场景:需要调用微信获取当前位置的借口. 途径:查看微信 https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115 .后 ...
- 微信js SDK接口
微信JS-SDK说明文档 http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html 一.微信登录功能 在进行微信OAut ...
- 微信JS SDK使用权限签名算法
jsapi_ticket 生成签名之前必须先了解一下jsapi_ticket,jsapi_ticket是公众号用于调用微信JS接口的临时票据.正常情况下,jsapi_ticket的有效期为7200秒, ...
- 微信js sdk分享开发摘记java版
绑定域名和引入js的就不说了 废话不说直接上代码 public void share(HttpServletRequest request) throws Exception { StringBuff ...
- 微信-js sdk invalid signature签名错误 问题解决
如果出现 invalid signature,首先可以确定的是你的签名算法有问题.建议:首先查看微信官方网站给出的解决方案,链接为: http://mp.weixin.qq.com/wiki/7/aa ...
随机推荐
- angular.uirouter
首先给大家介绍angular-ui-router的基本用法.如何引用依赖angular-ui-router angular.module('app',["ui.router"]). ...
- 多线程(一)~基础介绍,简单demo实现
前言: 现在CPU都是多核的,可以同时处理多个进程,比如我笔记本的CPU是i3-370,它就是双核四线程的.那么这个核和线程都是什么呢? 核是针对硬件而言的,即核心,代表的 ...
- Anaconda中spyder 安装tensorflow
关于Anaconda的安装就不介绍了,本文主要介绍spyder中安装 tensorflow.废话少说 直接重点: 1.安装好Anaconda之后,找到spyder图标 点击install,等待安装完成 ...
- 初涉京东及淘宝开放平台API-商品模型
============ 京东 ============ [Product]http://help.jd.com/jos/question-568.html#A2ware_id(相当于SPU?)sku ...
- May 17th 2017 Week 20th Wednesday
Men are nearly always willing to believe what they wish. 人总爱想入非非,把愿望变成现实. It is just the humancondit ...
- March 17 2017 Week 11 Friday
Simplicity is the ultimate sophistication. 简约才是精巧到了极致. Recently I have spent a great number of time ...
- scrum 第四次冲刺
一.项目目的 为生活在长大的学生提供方快捷的生活服务,通过帖子发现自己志同道合的朋友,记录自己在长大点滴.本项目的意义在于锻炼团队的scrum能力,加强团队合作能力.确定本项目采用的技术方向:本项目整 ...
- selenium启动不了浏览器或者启动后不会写入网址,先更新下浏览器驱动
平时自动化习惯用Chrome浏览器.有几个月没用selenium启动IE和Firefox,今天跑兼容性测试,需要验证其他浏览器.结果遇到两个异常: 1 IE启动不了,直接报错. 2 Firefox启动 ...
- Andriod ADB Interface驱动安装失败Configure USB Debug for Android
介绍: Linux或Apple或OS X ,已经安装了USB驱动调试为Android的帮助,确认您的Android USB调试连接配置和正常工作. Windows下需要自己手动下载驱动安装或者通过下载 ...
- RHEL6.5和RHEL7 的区别(转)
Rhel6.5实验环境搭建 1)操作系统安装 RHEL7是一站式安装 2)网卡配置文件 RHEL6: /etc/sysconfig/network-scripts/ifcfg-eth0 RHEL7 ...