重庆小潘seo博客

当前位置:首页 > 重庆网络营销 > 小潘杂谈 >

小潘杂谈

微信开发入门(jssdk开发)

时间:2020-09-08 16:30:10 作者:重庆seo小潘 来源:
一个项目需要在微信里获得当前位置,于是就开始了我的微信开发之旅... 微信JSSDK说明文档mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html JSSDK使用步骤步骤一:绑定域名绑定域名要求是一级域名.但是使用的时候可以二级域名下的网页仍然可以

一个项目需要在微信里获得当前位置,于是就开始了我的微信开发之旅...

微信JSSDK说明文档mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html

JSSDK使用步骤步骤一:绑定域名绑定域名要求是一级域名.但是使用的时候可以二级域名下的网页仍然可以使用该接口.

步骤二:引入JS文件http://res.wx.qq.com/open/js/jweixin-1.0.0.js如果你的页面启用了https,务必引入 res.wx.qq.com/open/js/jweixin-1.0.0.js

步骤三:通过config接口注入权限验证配置配置这个会比较麻烦,最后讲.wx.config({   debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。   appId: '', // 必填,公众号的唯一标识   timestamp: , // 必填,生成签名的时间戳   nonceStr: '', // 必填,生成签名的随机串   signature: '',// 必填,签名,见附录1   jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2});步骤四:通过ready接口处理成功验证wx.ready(function(){  // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。});步骤五:通过error接口处理失败验证wx.error(function(res){  // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。});例如:获取地理位置接口wx.ready(function(){  wx.getLocation({     type: 'wgs84', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'     success: function (res) {     var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90     var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。     var speed = res.speed; // 速度,以米/每秒计     var accuracy = res.accuracy; // 位置精度     }  });});具体的还是看官方文档清楚些.

关于步骤三的Config说明:var wxConfigJson = {   debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。   appId: 'wx821bb7356e99a3a7', // 必填,公众号的唯一标识   timestamp: 1446184841, // 必填,生成签名的时间戳   nonceStr: '80262bec-7cd2-4b03-b366-97fab6e91cdd', // 必填,生成签名的随机串   signature: 'fd017d631d63cef32d5f25ea276911bcb0a29782', // 必填,签名,见附录1   jsApiList: ['getLocation'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2};@Html.Raw(new WeChatJS_SDK_Config().GetConfig()) 生成上面的wxConfigJson下面是我写的WeChatJS_SDK_Config类,见笑了. 1 public class WeChatJS_SDK_Config 2 { 3private string _appId; 4private int _timestamp ;// 必填,生成签名的时间戳 5private string _nonceStr ;// 必填,生成签名的随机串 6private string _url; 7private string _sign; 89public WeChatJS_SDK_Config()10{11_appId = AccountConfig._appID;12_timestamp = Core.GetTimestamp();13_nonceStr = Guid.NewGuid().ToString();14_url = HttpContext.Current.Request.Url.ToString();15_sign =16String.Format("jsapi_ticket={0}&noncestr={1}&timestamp={2}&url={3}", Jsapi_Ticket.GetJsapi_Ticket(),17_nonceStr, _timestamp, _url).Md5Entry("sha1").ToLower();18}19 20/* Url方法的区别21*@Html.Raw("var originalString='"+HttpContext.Current.Request.Url.OriginalString+"';")22@Html.Raw("var rawUrl='"+HttpContext.Current.Request.RawUrl+"';")23@Html.Raw("var url='"+HttpContext.Current.Request.Url+"';")2425var originalString = 'http://xb.hnjdkj.cn:80/index/home';26var rawUrl = '/index/home';27var url = 'http://xb.hnjdkj.cn/index/home';*@28*/29public string GetConfig()30{31var res = string.Format(32"var wxConfigJson = {{debug: {0}, appId: '{1}', timestamp: {2},nonceStr: '{3}',signature: '{4}',jsApiList: ['getLocation'] }};", Kits.AppSettings("WeChatDebug"), _appId, _timestamp, _nonceStr, _sign);33return res;34}35 36 }【相关推荐】

1. 微信公众号平台源码下载

2. 微信开发之生命周期函数的实例教程

3. 微信开发之传值取值的几种方法介绍

4. 详解微信小程序支付功能开发错误总结以上就是微信开发入门(jssdk开发)的详细内容,更多请关注小潘博客其它相关文章!