微信网页开发如何完成签名校验
在做微信网页开发过程中,要使用微信的JSD接口,需要完成签名效验才行。但是很多人在签名过程中会遇到各种各样的问题,简直心态爆炸,那要如何正确的完成接口的签名呢?
创新互联公司是一家专业提供钟楼企业网站建设,专注与成都做网站、网站建设、外贸营销网站建设、H5开发、小程序制作等业务。10年已为钟楼众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
首先,登录微信公众号后台,设置js安全域名。
第二,要在页面中引入微信的js-sdk。
第三步,通过config接口注入权限验证配置。
参数当中,timestamp是一个时间戳字符串,可以直接在网上搜转换工具,将某个时间转换成时间戳,这个时间不一定是要当前的,只有是最近几天的都行。nonceStr是随机串,可以随意填一个字符串,但要确保之后的字符串都是同一个。sinature是生成的签名,这个签名怎么生成呢?
这个要先获取access_token、jsapi_ticket。
先获取access_token,然后通过access_token获取jsapi_ticket。不管是ccess_token还是jsapi_ticket,都有一个存活期,大约是7200秒,在存活期内,最好不好重复获取,因为会造成混乱。可以用数据库或者文件把获取的ccess_token、jsapi_ticket保存下来,然后代码规定在7200秒的某个时间内重新获取,以免ccess_token、jsapi_ticket过期,获取的时间最好是存活期结束前的5分钟,也是6900秒左右。
获取了jsapi_ticket后,通过请求接口返回signature也就是签名。至于接口是哪个,可以找微信开发文档,里面写的很详细。此接口需要的参数有:
计算签名需要几个参数:
1、noncestr(随机字符串),与前端配置一致
2、有效的jsapi_ticket,
3、timestamp(时间戳), 与前端配置一致
4、url(当前网页的URL,不包含#及其后面部分),注意在某些程序中url中的某些字符会被会转化,造成后台接收的url与页面url不一致导致签名无效。
生成了签名后,在前端配置后,一般就可以了。
我的php网站:kq.dbmkq.com
新闻标题:微信网页开发如何完成签名校验
浏览地址:http://myzitong.com/article/ppdjgc.html