当前位置: 首页 > news >正文

windows下微信公众号开发(js-sdk)(一)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

因为工作需要正在研究中.....

js-sdk 官方 文档说明:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115

 

1.  绑定js安全域名

2. 引入微信接口文件

    http://res.wx.qq.com/open/js/jweixin-1.2.0.js

3.获取access_token

有个测试地址:https://mp.weixin.qq.com/debug/,填入appid和appsecret,就可以获取到,

或者 通过地址
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

红色部分改成自己的,成功后有效期两个小时

4.获取jsapi_ticket

通过以下链接获取:

https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi

成功返回,有效期两个小时

{
"errcode":0,
"errmsg":"ok",
"ticket":"bxLdikRXVbTPdHSM05e5u5sUoXNKd8-41ZO3MhKoyN5OfkWITDGgnr2fwJ0m9E8NYzWKVZvdVtaUgWvsdshFKA",
"expires_in":7200
}

5.对jsapi_ticket 进行加密获取signature

noncestr=Wm3WZYTPz0wzccnW
jsapi_ticket=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg
timestamp=1414587457
url=http://mp.weixin.qq.com?params=value

url:是当前的网页地址

noncestr:自己生成的

timestramp: 时间戳(自己生成)

然后对上面进行编码,然后进行sha1签名得到signature

注意事项

1.签名用的noncestr和timestamp必须与wx.config中的nonceStr和timestamp相同。

2.签名用的url必须是调用JS接口页面的完整URL。

3.出于安全考虑,开发者必须在服务器端实现签名的逻辑。

相关加密算法,可去官方的示例文件中找,里面有个NODE文件夹可以用在页面中

 

6.页面中配置wx

wx.config({
    debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
    appId: '', // 必填,公众号的唯一标识
    timestamp: , // 必填,生成签名的时间戳
    nonceStr: '', // 必填,生成签名的随机串
    signature: '',// 必填,签名,见附录1
    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});

 接下来就能进行微信公众号功能开发了,

 

 

 

 

转载于:https://my.oschina.net/jujumao/blog/1503152

相关文章:

  • java8 Stream Pipelines 浅析
  • linux下的ftp
  • Servlet之doPost获取表单参数
  • 【转载】JSP 获取真实IP地址的代码
  • 【转】XML string 转datagrid datatable dataset
  • 设计原则之宜家效应:如何让人们爱上你的产品
  • IE6 DIV height 最小高度解决方法
  • svn报错can only be performed on a version resource [at this time].
  • C++ 中的强制类型转换
  • pycharm引入django
  • log
  • 360安全卫士升级致Win7/vista电脑不能上网
  • Leet Code OJ 219. Contains Duplicate II [Difficulty: Easy]
  • max(min)-device-width和max(min)-width的区别
  • 《掌控Windows SErver 2008 活动目录》 电子文档 下载 清华出版社
  • egg(89)--egg之redis的发布和订阅
  • gcc介绍及安装
  • JavaScript DOM 10 - 滚动
  • JavaScript新鲜事·第5期
  • java正则表式的使用
  • Python_OOP
  • Vue2.x学习三:事件处理生命周期钩子
  • vue数据传递--我有特殊的实现技巧
  • Work@Alibaba 阿里巴巴的企业应用构建之路
  • 高度不固定时垂直居中
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 每天10道Java面试题,跟我走,offer有!
  • 日剧·日综资源集合(建议收藏)
  • 使用Gradle第一次构建Java程序
  • 小程序开发中的那些坑
  • ionic入门之数据绑定显示-1
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • ###C语言程序设计-----C语言学习(6)#
  • #Linux(帮助手册)
  • #Z2294. 打印树的直径
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • $.type 怎么精确判断对象类型的 --(源码学习2)
  • (3)(3.5) 遥测无线电区域条例
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (三) diretfbrc详解
  • (原創) 如何安裝Linux版本的Quartus II? (SOC) (Quartus II) (Linux) (RedHat) (VirtualBox)
  • (转)使用VMware vSphere标准交换机设置网络连接
  • (状压dp)uva 10817 Headmaster's Headache
  • ***php进行支付宝开发中return_url和notify_url的区别分析
  • ***详解账号泄露:全球约1亿用户已泄露
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .NET委托:一个关于C#的睡前故事
  • :not(:first-child)和:not(:last-child)的用法
  • @configuration注解_2w字长文给你讲透了配置类为什么要添加 @Configuration注解
  • [ C++ ] STL_vector -- 迭代器失效问题
  • [ 网络基础篇 ] MAP 迈普交换机常用命令详解
  • [1525]字符统计2 (哈希)SDUT
  • [2]十道算法题【Java实现】
  • [C# WPF] DataGrid选中行或选中单元格的背景和字体颜色修改