php发送消息模板返回40001错误,请问错误出在哪?

hgwyl 2018-12-26 12:46:36

运行时返回40001参数(好像代表token验证错误)。
对微信接口的机制很不熟……请问问题出在哪……?

页面代码如下:
<?php
$ACCESS_TOKEN="服务号里设置的token";
$data=array(
'touser'=>"目标openid", //要发送给用户的openid
'template_id'=>"服务号里消息模板的id",//改成自己的模板id,在微信后台模板消息里查看
'url'=>"http://www.域名.com/", //自己网站链接url
//以下数据设置无误
'data'=>array(
'first'=>array(
'value'=>"标题请查阅。",
'color'=>"#000"
),
'keyword1'=>array(
'value'=>"第1行",
'color'=>"#f00"
),
'keyword2'=>array(
'value'=>"第2行",
'color'=>"#173177"
),
'remark'=>array(
'value'=>"测试结束>>>",
'color'=>"#3d3d3d"
),
)
);

$json_data=json_encode($data);//转化成json数组让微信可以接收

$url="https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".$ACCESS_TOKEN;//模板消息请求URL

$res=https_request($url,urldecode($json_data));//请求开始
$res=json_decode($res,true);

echo $res['errcode'];

//curl请求函数,微信都是通过该函数请求
function https_request($url,$data = null){
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
if (!empty($data)){
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
}
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($curl);
curl_close($curl);
return $output;
}

?>
...全文
160 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
hgwyl 2019-01-28
  • 打赏
  • 举报
回复
没人来接分吗?
hgwyl 2018-12-26
  • 打赏
  • 举报
回复
论坛上找到个能用的
https://bbs.csdn.net/topics/391835651
留着给后来的兄弟~

3,143

社区成员

发帖
与我相关
我的任务
社区描述
微信开发即微信公众平台开发,将企业信息、服务、活动等内容通过微信网页的方式进行表现,通过二次开发可以将公众账号由一个媒体型营销工具转化成提供服务的产品。
社区管理员
  • 微信开发
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧