微信小程序 出现47001 data format error原因解决办法


Posted in Javascript onMarch 10, 2017

微信小程序 出现47001 data format error原因解决办法

看下错误:

微信小程序 出现47001 data format error原因解决办法

主要原因是请求的数据不是json格式引起的

分享下我用的代码和函数:

 发送模板消息

public function sendmessage(){
 $data=$_POST=json_decode(file_get_contents('php://input'), TRUE);
 $access_token=$this->getAccessToken();
 $request_url='https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token='.$access_token;
 $request_data=array(
  'touser'=>$data['touser'],//接收者(用户)的 openid
  'template_id'=>$data['template_id'],//所需下发的模板消息的id
  'page'=>$data['page'],//点击模板卡片后的跳转页面
  'form_id'=>$data['form_id'],//表单提交场景下,为 submit 事件带上的 formId;支付场景下,为本次支付的 prepay_id
  'data'=>$data['data'],//"keyword1": {"value": "339208499", "color": "#173177"}
  'emphasis_keyword'=>$data['emphasis_keyword']//模板需要放大的关键词,不填则默认无放大
 );
 $return=json_decode(https_request($request_url,$request_data,'json'),true);
 $this->response($return,'json');
 }

发送请求

function https_request($url,$data,$type){
 if($type=='json'){//json $_POST=json_decode(file_get_contents('php://input'), TRUE);
 $headers = array("Content-type: application/json;charset=UTF-8","Accept: application/json","Cache-Control: no-cache", "Pragma: no-cache");
 $data=json_encode($data);
 }
 $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);
 curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers ); 
 $output = curl_exec($curl);
 curl_close($curl);
 return $output;
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
WEB 浏览器兼容 推荐收藏
May 14 Javascript
js获取事件源及触发该事件的对象
Oct 24 Javascript
PhotoShop给图片自动添加边框及EXIF信息的JS脚本
Feb 15 Javascript
JS在一定时间内跳转页面及各种刷新页面的实现方法
May 26 Javascript
15位和18位身份证JS校验的简单实例
Jul 18 Javascript
解决Vue页面固定滚动位置的处理办法
Jul 13 Javascript
React Native模块之Permissions权限申请的实例相机
Sep 28 Javascript
jquery引入外部CDN 加载失败则引入本地jq库
May 23 jQuery
Vue 开发必须知道的36个技巧(小结)
Oct 09 Javascript
javascrpt密码强度校验函数详解
Mar 18 Javascript
Vue中使用import进行路由懒加载的原理分析
Apr 01 Vue.js
vue 把二维或多维数组转一维数组
Apr 24 Vue.js
BootstrapValidator实现注册校验和登录错误提示效果
Mar 10 #Javascript
Bootstrap fileinput组件封装及使用详解
Mar 10 #Javascript
Bootstrap栅格系统使用方法及页面调整变形的解决方法
Mar 10 #Javascript
Node.js中.pfx后缀文件的处理方法
Mar 10 #Javascript
Vue.js结合bootstrap实现分页控件
Mar 10 #Javascript
js获取ip和地区
Mar 10 #Javascript
Vue.js bootstrap前端实现分页和排序
Mar 10 #Javascript
You might like
mac下使用brew配置环境的步骤分享
2011/05/23 PHP
深入eAccelerator与memcached的区别详解
2013/06/06 PHP
php简单复制文件的方法
2016/05/09 PHP
Javascript注入技巧
2007/06/22 Javascript
图片上传即时显示缩略图的js代码
2009/05/27 Javascript
在一个浏览器里呈现所有浏览器测试结果的前端测试工具的思路
2010/03/02 Javascript
JQuery中对Select的option项的添加、删除、取值
2013/08/25 Javascript
简单js代码实现selece二级联动(推荐)
2014/02/18 Javascript
jquery实现点击文字可编辑并修改保存至数据库
2014/04/15 Javascript
jQuery内置的AJAX功能和JSON的使用实例
2014/07/27 Javascript
JS实现让网页背景图片斜向移动的方法
2015/02/25 Javascript
JavaScript获取当前cpu使用率的方法
2015/12/15 Javascript
jQuery获取同级元素的简单代码
2016/07/09 Javascript
canvas的神奇用法
2017/02/03 Javascript
angular 组件通信的几种实现方式
2018/07/13 Javascript
JS实现求5的阶乘示例
2019/01/21 Javascript
浅入深出Vue之自动化路由
2019/08/06 Javascript
原生JS实现天气预报
2020/06/16 Javascript
vue如何在项目中调用腾讯云的滑动验证码
2020/07/15 Javascript
TensorFlow saver指定变量的存取
2018/03/10 Python
matlab中实现矩阵删除一行或一列的方法
2018/04/04 Python
Numpy array数据的增、删、改、查实例
2018/06/04 Python
线程安全及Python中的GIL原理分析
2019/10/29 Python
wxpython+pymysql实现用户登陆功能
2019/11/19 Python
解析python 类方法、对象方法、静态方法
2020/08/15 Python
赫里福德的一家乡村零售商店:Philip Morris & Son
2017/06/25 全球购物
三星法国官方网站:Samsung法国
2019/10/31 全球购物
师范生实习个人的自我评价
2013/09/28 职场文书
小学国庆节活动方案
2014/02/11 职场文书
酒店辞职信怎么写
2015/02/27 职场文书
自我评价优缺点范文
2015/03/11 职场文书
如何写新闻稿
2015/07/18 职场文书
2016年教师反腐倡廉心得体会
2016/01/13 职场文书
python读取pdf格式文档的实现代码
2021/04/01 Python
matplotlib如何设置坐标轴刻度的个数及标签的方法总结
2021/06/11 Python
Python socket如何解析HTTP请求内容
2022/02/12 Python