• 微信(公众号、小程序)开发


    一、开发前准备

    1)准备一个服务器,一个已经备案的域名(小程序开发必须使用:https)

    2)涉及到微信支付的,需提前在微信支付商户平台,申请商户号和秘钥

    3)如果需要将微信公众号或微信小程序相互打通,需提前在微信开放平台注册账号,并将微信公众号或小程序绑定在一起(此时才会获取到unionid)

    二、配置

    1)开发配置

    操作路径:微信公众平台 —— 开发 —— 基本配置

    微信(公众号、小程序)开发

    操作页面

    注意:如果是进行公众号网页开发以上配置不是必须的

    2)公众号设置

    操作路径:微信公众平台 —— 设置 —— 公众号配置

    微信(公众号、小程序)开发

    操作页面

    注意:以上设置,只有在进行公众号网页开发的时候需要,小程序开发不需要

    三、开发

    1)微信公众号的开发

    微信公众号开发要分为:与微信服务器交互的开发和不与微信服务器交互的开发。与微信服务器交互的开发,就是微信服务器主动与你的服务器通讯,以响应你的请求。例如,你的用户向你的公众号发送一条信息,你的服务器接受到信息后自动发送一条回复消息。

    对于与微信服务器交互的开发,首先需要验证微信服务器。在上面的开发配置处,我们已经配置了服务器地址。此服务器地址就是验证微信服务器时,微信服务器需要调用的地址。验证微信服务器时,微信服务器会向此地址发送POST请求,传递一些参数,此地址接受到参数后,需要作出相应的处理。

    下面以ThinkPHP的案例来说明

    微信(公众号、小程序)开发

    微信(公众号、小程序)开发

    代码样图

    微信(公众号、小程序)开发

    代码样图

    注意:不需要与微信服务器交互的开发,以上内容可以省略

    不管是否需要与微信服务器交互,access_token是必不可少的。因为access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。因此在调用其他接口之前,需要先调用接口获取access_token。

    获取access_token,可以调用如下接口:

    微信(公众号、小程序)开发

    请求链接

    微信(公众号、小程序)开发

    参数说明

    微信(公众号、小程序)开发

    返回结果

    注意:由于access_token的有效期目前为2个小时,所以在获取到access_token后可以将其以文件的形式保存起来,使用时,先判断保存的access_token是否过期,没有过期则直接使用,过期了则重新调用接口获取新的access_token并保存到文件中。

    access_token获取之后,其他接口即可按开发文档直接调用。

    2)小程序开发

    小程序开发相对于公众号开发而言是比较简单的,其难点就是调起授权登录窗,获取用户信息。那么如何获取用户的登录信息呢?

    具体步骤如下:

    • 调用wx.login(OBJECT)接口,获取登录凭证(code),调用后台自己的接口,用code 换取 session_key,获取到session_key后,使用自己的加密方式生成新的session_key,将其返回给客户端,客户端接收到新的session_key后将其保存在本地。

    • 进入其他需要用户信息的页面,先调用wx.checkSession(OBJECT)接口,检测用户登录态是否失效,如果用户登录态失效了,需要重新操作第一步,获取新的session_key

    • 如果登录态没有失效,将之前本地已经保存的session_key传至后台,后台接收到后,通过session_key获取用户信息

    3)微信支付开发

    微信开发数据的传输使用的是XML格式,因此在接受数据和发送数据时,需要进行XML的封装和解析。微信官方Demo中已经封装相关方法,大家可以根据需要选择版本。

    扫码支付。微信扫码支付,有两种模式,模式一不需要预先指定支付用户的openid,而模式二需要预先指定用户的openid。对于模式一,需要先在微信支付商户后台,配置扫码回调地址,然后再根据商品或订单信息生成二维码。微信扫码时,微信服务器会将商品或订单信息及扫码人的openid推送到扫码回调地址。模式一和模式二的不同之处在于获取openid的方式,其他的步骤基本一样,都是调用统一下单API。

    微信(公众号、小程序)开发

    微信(公众号、小程序)开发

  • 相关阅读:
    linux学习之用户的切换
    Skyline桌面二次开发之路径漫游(C#)
    AppDomain.CurrentDomain.BaseDirectory项目目录相关操作
    IoC模式(依赖、依赖倒置、依赖注入、控制反转)
    .net core 2.1-----Sql Server数据库初体验
    WPF成长之路------翻转动画
    C#之通过图片地址下载图片
    g'g'gggg
    Java中的多态
    接口
  • 原文地址:https://www.cnblogs.com/zytrue/p/8547674.html
Copyright © 2020-2023  润新知