weixin_39885330 2018-12-25 11:00 采纳率: 0%
浏览 640
已结题

通过接口传递数据,提交显示成功了,但数据传递不过去,麻烦大神给看一下,

$post_url = ''x'x'x;
$headers = array();
$headers[] = 'Content-Type:application/json';
$headers[] = 'Connection:keep-alive';
$headers[] = 'Accept-Encoding:gzip';
$headers[] = 'Accept-Charset:utf-8';
$post_array = array(
'cmd'=>'insertLeaveWord',
'token'=>'245Y7BSfDHIWEie35',
'params'=>array(
'realName'=>$_POST['username'],
'phone'=>$_POST['phone'],
'content'=>$_POST['message']
)
);
$post_data = json_encode($post_array);

    //模拟post请求
    $ch = curl_init();//初始化curl
    curl_setopt($ch, CURLOPT_URL,$post_url);//抓取指定网页
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);//设置header
    curl_setopt($ch, CURLOPT_TIMEOUT, 3);           //设置超时
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
    curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
    $result['data'] = curl_exec($ch);
    $result['code'] = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);


    $json_data = json_decode($result['data'],true);//解析json数组

    if($json_data['result'] == 0 && $json_data['resultNote'] == 'Success'){
        echo '<script>';
        echo 'alert("信息已提交,稍后会有客服与您取得联系。");';
        echo 'window.location.replace(document.referrer)';
        echo '</script>';
    }else{
        echo '<script>';
        echo 'alert("信息已失败,请重试。");';
        echo 'window.history.go(-1);';
        echo '</script>';
    }
  • 写回答

2条回答

  • threenewbee 2018-12-25 04:10
    关注

    用抓包工具看下,或者调试输出下 $json_data 完整的内容是什么。
    接口是提供者约定的,是否正确调用的规则是它给的。

    评论

报告相同问题?

悬赏问题

  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办