PHP:小程序实现推送订阅消息

思路:

1.首先拿到->access_token
2.然后获取openid(需前端传code)
3.小程序后台申请订阅消息模板
4.推送消息	(需前端授权订阅消息发送)
	//请求access_token
	$getToken = file_get_contents("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=你的小程序id&secret=小程序的秘钥");
	//json解析返回数据
	$getToken = json_decode($getToken);
	//拿到access_token
	$token = $getToken ->{'access_token'};

	// 获取请求路径
	//sprintf=php方法
	$url = sprintf("https://api.weixin.qq.com/sns/jscode2session?appid=%s&secret=%s&js_code=%s&grant_type=authorization_code",
			"小程序id","秘钥","前端的code");
	//发送请求拿取openid
	//curl_get为自行封装的php中get请求
	$wxRet = json_decode(curl_get($url),true);

	//推送消息url
	$msgUrl = 'https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token='.$token;

	//订阅消息的模板消息
	$msgObj =	[
		//模板属性
		"character_string13"=> [
			//模板属性值
			"value"=> "339208499"
		],
		"phone_number11"=> [
			"value"=> "17503008888"
		],
		"amount10"=> [
				"value"=> "120"
		],
		"thing5"=> [
				"value"=> "广州市新港中路397号"
		],
		"thing6"=> [
			"value"=> "外123"
		]
	];

	//请求的data数据
	$msgData = [
		'access_token'=> $token,
		'touser'=> $wxRet['openid'],
		'template_id'=> '模板id',
		'data'=> $msgObj
	];
	
	//curl_post自定封装post请求
	$res = curl_post($msgUrl,$msgData);

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值