【微信公众平台】SAE接入

本文详细介绍如何设置微信公众号的开发模式及服务器验证流程。首先需要注册并配置公众号接口信息,然后在SAE上搭建服务器,通过SHA1加密算法验证微信服务器发来的请求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、你得有一个公众号。
  • 注册公众号,填写相关信息,等待审核。
  • 审核通过之后,登陆界面,进入开发模式,配置相关接口信息。



二、进入开发模式,配置接口信息。

  • 需要填写服务器的URL
  • 填写验证信息的TOKEN,用于识别这个服务器是你的;
  • 详细步骤:
    • 此处URL应该要配置为可以验证消息的Token。即文档中说明的第二步(验证服务器地址的有效性)。
    • 验证流程:
    • 1)开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址URL上,GET请求携带四个参数。(signature/timestamp/nonce/echostr)
    • 2)开发者通过检验signature对请求进行校验(下面有校验方式)。
    • 3若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。

 

三、在SAE建立建立自己的服务器

  • 加密/校验流程如下:
    1. 将token、timestamp、nonce三个参数进行
    字典序排序
    2. 将三个参数字符串拼接成一个字符串进行sha1加密
    3. 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信


 

三、在SAE建立建立自己的服务器

  • 加密/校验流程如下:
    1. 将token、timestamp、nonce三个参数进行
    字典序排序
    2. 将三个参数字符串拼接成一个字符串进行sha1加密
    3. 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信

 

	public function valid()
    {
        $echoStr = $_GET["echostr"];

        //valid signature , option
        if($this->checkSignature()){
        	echo $echoStr;
        	exit;
        }

    }


private function checkSignature()
	{
        // you must define TOKEN by yourself
        if (!defined("TOKEN")) {
            throw new Exception('TOKEN is not defined!');
        }
        
        $signature = $_GET["signature"];
        $timestamp = $_GET["timestamp"];
        $nonce = $_GET["nonce"];
        		
		$token = TOKEN;
		$tmpArr = array($token, $timestamp, $nonce);
        // use SORT_STRING rule
		sort($tmpArr, SORT_STRING);
		$tmpStr = implode( $tmpArr );
		$tmpStr = sha1( $tmpStr );
		
		if( $tmpStr == $signature ){
			return true;
		}else{
			return false;
		}
	}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值