C#微信开发之启用开发者模式

作者:likar 时间:2022-07-07 11:24:54 

启用开发者模式

①填写服务器配置

启用开发模式需要先成为开发者,而且编辑模式和开发模式只能选择一个(进入微信公众平台=>开发=>基本配置)就可以看到以下的界面:

C#微信开发之启用开发者模式

点击修改配置,会出现以下界面:

C#微信开发之启用开发者模式

填写服务器地址(URL)、Token和EncodingAESKey,其中URL是开发者用来接收微信消息和事件的接口URL。Token可由开发者可以任意填写,用作生成签名(该Token会和接口URL中包含的Token进行比对,从而验证安全性)。EncodingAESKey由开发者手动填写或随机生成,将用作消息体加解密密钥。

同时,开发者可选择消息加解密方式:明文模式、兼容模式和安全模式。模式的选择与服务器配置在提交后都会立即生效,请开发者谨慎填写及选择。加解密方式的默认状态为明文模式,选择兼容模式和安全模式需要提前配置好相关加解密代码,详情请参考消息体签名及加解密部分的文档(微信公众号消息加解密开发文档)。

②验证服务器地址的有效性

开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址URL上,GET请求携带四个参数。

C#微信开发之启用开发者模式

开发者通过检验signature对请求进行校验(下面有校验方式)。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败(注意:微信服务器只支持80端口)。

使用GET请求带上以上参数请求服务器,具体实现代码:


public void InterfaceTest()
{
string token = "配置时填写的token";
string echoString = HttpContext.Current.Request.QueryString["echoStr"];
string signature = HttpContext.Current.Request.QueryString["signature"];
string timestamp = HttpContext.Current.Request.QueryString["timestamp"];
string nonce = HttpContext.Current.Request.QueryString["nonce"];
if (!string.IsNullOrEmpty(echoString))
{
HttpContext.Current.Response.Write(echoString);
HttpContext.Current.Response.End();
}
}

来源:http://www.cnblogs.com/likar/p/5180030.html

标签:开发者模式
0
投稿

猜你喜欢

  • SpringCloud分布式链路跟踪的方法

    2023-11-24 23:42:19
  • Java后端学习精华之TCP通信传输协议详解

    2021-08-06 03:15:42
  • Java中JMM与volatile关键字的学习

    2022-03-24 00:12:00
  • java代码规范review异常事故记录

    2023-08-03 07:23:24
  • 模拟按Home键退出应用的简单方法(分享)

    2023-10-30 20:02:36
  • springboot使用Mybatis-plus分页插件的案例详解

    2023-10-27 13:47:43
  • java使用异或实现变量互换和异或加密解密示例

    2023-10-19 16:53:38
  • Java Validation方法入参校验实现过程解析

    2021-08-04 03:31:50
  • Android内置SQLite的使用详细介绍

    2021-10-24 11:44:17
  • Android图像处理之绘制圆形、三角形及扇形的头像

    2022-10-13 14:01:48
  • Java拦截器和过滤器的区别分析

    2021-11-06 22:28:46
  • JDK1.8中的ConcurrentHashMap源码分析

    2023-11-27 06:02:32
  • Java Collection集合iterator方法解析

    2022-11-17 06:43:29
  • 浅谈Spring Data如何简化数据操作的方法

    2023-04-19 04:50:08
  • Spring Boot中@Conditional注解介绍

    2022-03-03 15:23:37
  • Java 逻辑控制全面详解

    2022-10-29 09:01:48
  • Java Web项目部署在Tomcat运行出错与解决方法示例

    2023-07-18 02:50:47
  • JavaWeb开发之使用jQuery与Ajax实现动态联级菜单效果

    2023-11-28 19:46:08
  • java转换字符串编码格式的方法

    2022-02-12 04:30:24
  • springboot整合微信支付sdk过程解析

    2021-12-30 22:47:29
  • asp之家 软件编程 m.aspxhome.com