自己最近搞了公众号,记录一下。

目的就是为了在微信公众号里启用服务器配置。 微信文档

其实微信文档已经写得很清楚了,也很简单。(微信的目的就是它发送一个get请求,希望我们能接受一下,然后给微信回个数据告诉它)

方法一:用WebApi,MVC架构(注意Controller里的这个Action不要去添加视图)

微信发给我们四个参数:signature timestamp nonce echostr  我们通过微信要求之后把echostr这个字符串再发给微信。(最最简单的办法就是,我们啥都不做,接收echostr参数,直接返回这个参数。嘿嘿嘿)

在Controller里这样写,也是能通过的。API架构加个路由,get请求。弄好后自己可以用postman测试一下(真的是啥都不用写)

按照微信要求来:微信官方流程图

我们拿到数据需要处理一下:代码如下

        /// <summary>
/// 验证微信签名 wuchen
/// </summary>
/// <returns></returns>
/// * 将token、timestamp、nonce三个参数进行字典序排序
/// * 将三个参数字符串拼接成一个字符串进行sha1加密
/// * 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。
public bool CheckSignature()
{
var WeChat_Token = "TokenCrCool";
//从微信服务器接收传递过来的数据
string signature = VqiRequest.GetQueryString("signature"); //微信加密签名
string timestamp = VqiRequest.GetQueryString("timestamp");//时间戳
string nonce = VqiRequest.GetQueryString("nonce");//随机数 string[] ArrTmp = { WeChat_Token, timestamp, nonce };
Array.Sort(ArrTmp); //字典排序
string tmpStr = string.Join("", ArrTmp);//将三个字符串组成一个字符串
tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1");//进行sha1加密
tmpStr = tmpStr.ToLower();
//加过密的字符串与微信发送的signature进行比较,一样则通过微信验证,否则失败。
if (tmpStr == signature)
{
return true;
}
else
{
return false;
}
}

返回true,然后再返回echostr字符串。

方法二:三层架构的aspx页面(注意把前端页面删除干净,确保自己用postman测试的时候,只返回echostr)

就是这么简单粗暴。前端页面代码要删除干净的,像这样

方法三:一般处理程序 就两行代码。

三种方法都是可行的,完成之后发布在自己的云服务器上。使用80,443端口才可以。其他的微信文档有步骤的。

.NET微信开发 配置微信公众号基本配置的几种方法的更多相关文章

  1. 微信开发笔记:公众号获取access_token

    微信开发中,access_token的获取是一种非常常见的功能,通过公众号的appid和appsecret来向微信公众平台请求一个临时通行凭证:access_token.公众平台上的绝大部分操作都会需 ...

  2. 微信小程序的功能开发工具跟公众号的差别,小程序是一种减负思维对简单APP是巨大打击

    微信小程序的功能开发工具跟公众号的差别,小程序是一种减负思维对简单APP是巨大打击 摘要: 小程序和公众号最大的区别有如下四点:1.小程序没有粉丝,开发者在后台能看到的只能是累计用户访问数以及实时统计 ...

  3. Mac下进行基于java服务端语言的微信公众号本地js-sdk调试的大致方法

    开发微信公众号应用调用js-sdk,需要先在微信公众号后台配置可信域名,之后从微信的入口地址重定向到改域名下的路径后便会返回code,之后可以拿到一系列需要的参数等等.那么本地开发,如果使用的是PHP ...

  4. 微信小程序自运营器 微信小程序自动运营器(让你的微信小程序,公众号零运营成本,24小时全自动运营)

    自动发单,自动评价,自动评论,自动推广 微信小程序自运营器  微信小程序自动运营器(让你的微信小程序,公众号零运营成本,24小时全自动运营) 我们会根据你的微信公众号或微信小程序定制开发带有一定AI智 ...

  5. Python3 itchat微信获取好友、公众号、群聊的基础信息

    Python3 itchat微信获取好友.公众号.群聊的基础信息 一.简介 安装 itchat pip install itchat 使用个人微信的过程当中主要有三种账号需要获取,分别为: 好友 公众 ...

  6. Java 微信公众号上传永久素材的方法

    Java 微信公众号上传永久素材的方法 学习了:http://blog.csdn.net/u013791374/article/details/53258275 膜拜一下,源码如下: @Request ...

  7. 微信开发:微信js_sdk 分享,前端部分(二)

    微信开发:微信js-sdk前端分享,代码如下: <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"> ...

  8. 微信开发:微信js_sdk分享,使用场景,网页在微信app内部分享时的标题与描述,包括logo设置(一)

    主要有下面几步.首先大家先分清楚 小程序的appid,appSecret 跟公众号的appid,appSecret是不一样的.因为这两个都能拿到token,且是不同的值. 准备开始: 1.准备好 公众 ...

  9. php 微信开发之 微信支付 V3 开发 -CURLOP_TIMEOUT问题

    如果不懂怎么配置的话请看文章 php 微信开发之 微信支付配置 基本配置后在继续本文章的开发 . 本文章就先继续基本的实现!也并不困难.我大概的思路的返回购买者的唯一id 和 订单号的唯一 id 就2 ...

  10. [微信开发利器]微信内移动前端开发抓包调试工具fiddler使用教程

    [微信开发利器]微信内移动前端开发抓包调试工具fiddler使用教程   在朋友圈看到一款疯转的H5小游戏,想要copy,什么?只能在微信里打开?小样,图样图森破,限制了oauth.微信浏览器内打开, ...

随机推荐

  1. 022、MySQL字符串的拼接

    SELECT CONCAT('曾经沧海难为水-','-除却巫山不是云') #字符串拼接 SELECT CONCAT('AB','CD','EF'); #ABCDEF #字符串拼接 SELECT CON ...

  2. 010、MySQL日期时间戳转化为文本日期时间

    #时间戳转化文本时间 SELECT from_unixtime( unix_timestamp( curdate( ) ) ); #时间戳转化文本时间格式化 SELECT from_unixtime( ...

  3. 【LOJ3043】「ZJOI2019」线段树

    题面 问题可以转化为每次区间覆盖操作有 \(\frac{1}{2}\) 的概率进行,求标记和的期望.于是我们只要求出所有点有标记的概率即可. 我们设 \(f_i\) 表示节点 \(i\) 有标记的概率 ...

  4. Linux下安装JDK及其碰到的问题解决

    1.下载一个linux版本的jdk包 2.新建一个目录,专门用来存放安装包 mkdir    /home/software 3.将jdk包拷贝到/home/software下面,并解压 4.配置jdk ...

  5. 访问eureka 显示xml

    两种解决方式: 方式一:(我是通过此方式解决的) 一个博客“http://blog.csdn.net/l5764773160/article/details/77483730”,他的解决方案是: 将项 ...

  6. ACM-挑战题之排列生成

    题目描述:挑战题之排列生成 一自然数N,设N为3,则关于N的字典序排列为123,132,213,231,312,321.对于一个自然数N(1<= N <= 9 ) , 你要做的便是生成它的 ...

  7. 08 SSM整合案例(企业权限管理系统):06.产品操作

    04.AdminLTE的基本介绍 05.SSM整合案例的基本介绍 06.产品操作 07.订单操作 08.用户操作 09.权限控制 10.权限关联与控制 11.AOP日志 06.产品操作 SSM 环境搭 ...

  8. Golang的基础数据类型-浮点型

    Golang的基础数据类型-浮点型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.浮点型概述 Go语言提供两种精度的浮点数,即float32和float64,其中float32 ...

  9. pwntool基础和ida常用操作

    pwntools:http://www.91ri.org/14382.html ida:https://www.jianshu.com/p/d425140c6561

  10. 四十八、在SAP中函数参数的使用

    一.不带参数的函数定义如下 二.我们把函数内部会变化的变量以参数的形式定义,其中USING和CHANGING分别表示变量和返回值,因为so_car表示的是工作区,所以后面加上[]符号. 三.我们把2个 ...