Rumah  >  Artikel  >  pembangunan bahagian belakang  >  微信入坑第一弹 微信公众号第一篇推文 第一财经微信公众号 微信公众号第一条消

微信入坑第一弹 微信公众号第一篇推文 第一财经微信公众号 微信公众号第一条消

WBOY
WBOYasal
2016-07-29 08:50:452059semak imbas
验证原理:

signature:微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。

其中:

timestamp:时间戳

nonce:随机数

echostr:随机字符串
1.将token、timestamp、nonce三个参数进行字典序排序。

2.将三个参数拼接成一个字符串,并使用sha1加密。

3.开发者将加密后的字符串与signature对比;若相同,则这次请求来源于微信,是可信的。

<span style="font-family:KaiTi_GB2312;font-size:14px;"><?php define("TOKEN","weixin");
$weixinObj = new Wechat();
$weixinObj->valid();

class Wechat{
	public function valid(){
		$echoStr = $_GET['echostr'];
		if($this->checkSignature()){
			echo $echoStr;
			exit;
		}
	}
	//校验方法
	private function checkSignature(){
		$signature = $_GET['signature'];
		$timestamp = $_GET['timestamp'];
		$nonce = $_GET['nonce'];
		$token = TOKEN;

		$tmpArr = array($token, $timestamp, $nonce);
		sort($tmpArr);
		$tmpStr = implode($tmpArr);
		$tmpStr = sha1($tmpStr);
		if($tmpStr == $signature){
			return true;
		}else{
			return false;
		}
	}
}</span>

以上就介绍了微信入坑第一弹,包括了微信,第一方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn