在php中发送带有参数的发布请求以获取Json数据

时间:2018-08-03 12:44:22

标签: php json

我正在尝试从需要3个参数的另一台服务器获取一些json数据,以便我可以访问它。我在互联网上看到了此代码,但无法正常工作。我进行了很多搜索,但没有找到解决方案。当我运行此代码时,我得到:

  

缺少使用密码和代码

(是我请求的服务器的响应),我希望我能把事情弄清楚,如果有什么我不解释的请告诉我。

    $url = 'http://xxxx/.js';
    $data =http_build_query(array('user' => 'xx',
            'pass' =>'xxx ',
               'code' =>'xxx')
  );


    $options = array(
   'http' => array(
    'header'  => "Content-type: application/json\r\n",
    'method'  => 'POST',
    'content' => $data
    )  
    );
     $context= stream_context_create($options);
     $result = file_get_contents($url, false, $context);
      if ($result === FALSE) { }

     echo $result ;

1 个答案:

答案 0 :(得分:1)

尝试将有效负载更改为json ...

$data = json_encode( array(
  'user' => 'xxx',
  'pass' => 'xxx',
  'code' => 'xxx'
) );

并从您的内容类型中删除\r\n

"Content-type: application/json"