微信小程序 出现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 相关文章推荐
基于Jquery的表格隔行换色,移动换色,点击换色插件
Dec 22 Javascript
setInterval()和setTimeout()的用法和区别示例介绍
Nov 17 Javascript
node.js中的fs.symlink方法使用说明
Dec 15 Javascript
基于jQuery实现自动轮播旋转木马特效
Nov 02 Javascript
深入理解angularjs过滤器
May 25 Javascript
AngularJS指令与指令之间的交互功能示例
Dec 14 Javascript
js实现漫天星星效果
Jan 19 Javascript
基于Node.js的WebSocket通信实现
Mar 11 Javascript
原生js实现文件上传、下载、封装等实例方法
Jan 05 Javascript
Vue + element 实现多选框组并保存已选id集合的示例代码
Jun 03 Javascript
js实现手表表盘时钟与圆周运动
Sep 18 Javascript
基于ajax实现上传图片代码示例解析
Dec 03 Javascript
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
PHP 面向对象 final类与final方法
2010/05/05 PHP
ThinkPHP的模版中调用session数据的方法
2014/07/01 PHP
PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
2014/11/20 PHP
PHP执行shell脚本运行程序不产生core文件的方法
2016/12/28 PHP
php使用环形链表解决约瑟夫问题完整示例
2018/08/07 PHP
Yii框架模拟组件调用注入示例
2019/11/11 PHP
使用javascript实现Iframe自适应高度
2014/12/24 Javascript
JavaScript实现数组随机排序的方法
2015/06/26 Javascript
Bootstrap零基础入门教程(三)
2016/07/18 Javascript
Vuex2.0+Vue2.0构建备忘录应用实践
2016/11/30 Javascript
微信小程序wx.request实现后台数据交互功能分析
2017/11/25 Javascript
JS小球抛物线轨迹运动的两种实现方法详解
2017/12/20 Javascript
详解SPA中前端路由基本原理与实现方式
2018/09/12 Javascript
js设计模式之代理模式及订阅发布模式实例详解
2019/08/15 Javascript
Vue Object.defineProperty及ProxyVue实现双向数据绑定
2020/09/02 Javascript
python实现数组插入新元素的方法
2015/05/22 Python
Python实现的RSS阅读器实例
2015/07/25 Python
深入解析Python中函数的参数与作用域
2016/03/20 Python
Python树莓派学习笔记之UDP传输视频帧操作详解
2019/11/15 Python
Python魔法方法 容器部方法详解
2020/01/02 Python
详解torch.Tensor的4种乘法
2020/09/03 Python
Python截图并保存的具体实例
2021/01/14 Python
KIKO美国官网:意大利的平价彩妆品牌
2017/05/16 全球购物
外企C语言笔试题
2013/11/10 面试题
如何在Shell脚本中使用函数
2015/09/06 面试题
美术专业学生个人自我评价
2013/09/19 职场文书
个人简历自我鉴定
2013/10/11 职场文书
酒店应聘自荐信
2013/11/09 职场文书
八年级英语教学反思
2014/01/09 职场文书
幼儿园运动会口号
2014/06/07 职场文书
群众路线表态发言材料
2014/10/17 职场文书
社区党风廉政建设调研报告
2015/01/01 职场文书
2015年公务员试用期工作总结
2015/05/28 职场文书
(开源)微信小程序+mqtt,esp8266温湿度读取
2021/04/02 Javascript
如何使用PostgreSQL进行中文全文检索
2021/05/27 PostgreSQL
HTML中的表格元素介绍
2022/02/28 HTML / CSS