美文网首页
847.【微信公众号】基于golang的公众号开发基本配置

847.【微信公众号】基于golang的公众号开发基本配置

作者: 七镜 | 来源:发表于2023-11-08 22:04 被阅读0次

写在前头

  1. 1. 该教程目标用户是想基于golang语言开发公众号后台,实现自动回复、微信支付、客服等等一些拓展功能;

  2. 2. 需要会golang、gin、web服务的部署等基础知识。

  3. 一、打开公众号基本配置界面

  1. 3. 依次点击【设置与开发】、【基本配置】;

  2. 4. 【URL】:填写web服务配置的URL;

  3. 5. 【Token】:随便写,但代码中会用到;

  4. 6. 【EncodingAESKey】:随机生成即可,但要记住。

二、golang代码编写


package routers

import (
    "blog_server_v4/config"
    "crypto/sha1"
    "encoding/hex"
    "fmt"
    "github.com/gin-gonic/gin"
    "net/http"
    "sort"
    "strings"
)

func RouterPartner(router *gin.Engine) (interface{}, error) {
    routerDimension := router.Group("/xxx/xxxx")
    {
        routerDimension.GET("/xxx/xxxx/v1", func(c *gin.Context) {
        
            // 填写开发者填写的token
            token := config.AppConfig.Partner.Wx.Token

            // 接收请求参数
            signature := c.Query("signature")
            timestamp := c.Query("timestamp")
            nonce := c.Query("nonce")
            echostr := c.Query("echostr")

            // 校验signature
            if WXCheckSignature(signature, timestamp, nonce, token) {
                fmt.Println("微信公众号接入校验成功!")

                c.String(http.StatusOK, echostr)
            } else {
                fmt.Println("微信公众号接入校验失败!")
                c.String(http.StatusOK, "校验失败")
            }
            return
        })

    }
    return routerDimension, nil
    
}
func WXCheckSignature(signature, timestamp, nonce, token string) bool {

    params := []string{timestamp, nonce, token}
    sort.Strings(params)

    // 拼接参数字符串
    paramStr := strings.Join(params, "")

    // 进行sha1加密
    sha1Str := sha1.Sum([]byte(paramStr))

    // 与signature进行比较
    signatureStr := hex.EncodeToString(sha1Str[:])
    return signatureStr == signature
}

这是基于golang语言的gin web框架实现的微信校验核心代码,又不了解的,可加v:multi_z 沟通。

三、校验

[图片上传失败...(image-44879-1699525151047)]

可以看到,“提交成功”两个字,说明已经配置好了。

[图片上传失败...(image-f782f8-1699525151047)]

点击【启用】。

[图片上传失败...(image-34852d-1699525151047)]

可以看到,现在已经是“已启用”的状态了。

相关文章

  • 微信服务器接入

    这几天正在学习微信公众号开发,后台JAVA基于SSM框架对微信公众号进行开发。 微信公众平台“基本配置”。详细请参...

  • 记基于react的一次微信公众号开发

    微信公众号开发流程配置 微信公众号的基本配置选项中: 1, 获取appId和appSecret(如果查看不到, ...

  • 微信公众号配置

    微信支付 - 商户平台 商户号 支付证书 微信公众号 appid & appscret 开发 > 基本配置 > ...

  • 微信开发

    微信开发 公众号开发 微信WEB开发 JSSDK 小程序开发 公众号开发 公众号 订阅号 服务号 企业号 公众号开...

  • 微信JSSDK前端应用教程

    一、配置公众号①基本配置首先,你得有一个微信公众号,然后登陆微信公众平台 https://mp.weixin.qq...

  • mac上soundflower+OBS+微信公众号直播项目总结

    1. 本地微信公众号开发 参考:微信配置本地公众号开发环境[https://www.jianshu.com/p/0...

  • 微信公众号前期开发准备

    微信公众号前期准备 一、创建代码库(git/svn) 二、微信公众号配置 1)给开发人员微信号配置开发者权限 ...

  • 微信公众号开发流程

    微信公众号开发配置文档: 申请微信公众服务号(服务号需要有公司认证) url : https://mp.weixi...

  • 微信公众号开发 (4) 网页授权

    一、前言 微信公众号开发 (1) 微信接入认证成为开发者 微信公众号开发 (2) 消息处理 微信公众号开发 (3)...

  • 1.微信公众号服务器配置启用

    微信公众号开发首先要配置服务器,否则你只能使用一些简单功能,比如自动回复。 1.登录微信公众号并且进入开发的基本配...

网友评论

      本文标题:847.【微信公众号】基于golang的公众号开发基本配置

      本文链接:https://www.haomeiwen.com/subject/flvqwdtx.html