2017-01-11 152 views
1

我想不卷曲,但与头发送GET请求。 问题是什么?发送GET请求,而不卷曲

这里是代码我唧唧歪歪唧唧歪歪喇嘛:

private function getRequest($url, $data){ 
    $uri = $this->api_url . $url; 
    $content = http_build_query($data); 
    $content = urldecode($content); 

    $options = array(
     'http' => array(
      'header' => "Content-type: application/x-www-form-urlencoded\r\n" . 
          "Authorization : Bearer " . $this->access_token . "\r\n", 
      'method' => 'GET', 
      'content' => $content,//$data = ['key' => 'value'] 
     ), 
    ); 

    $context = stream_context_create($options); 
    var_dump($context); //resource(70) of type (stream-context) 
    if (fopen($uri, 'r', false, $context)) //NO 
     echo "yes"; 
    else 
     echo "no"; 
    fpassthru($fp); //empty 

} 

这里是$选项返回值:

Array 
(
    [http] => Array 
     (
      [header] => Content-type: application/x-www-form-urlencoded 
Authorization : Bearer kEQn2I02JOegz6gD4 

      [method] => GET 
      [content] => address=%D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D0%B0 //cyrillic, with ENG doesn't work anyway 
     ) 

) 
+0

你试过在这里找到了建议: http://stackoverflow.com/questions/8596311/how-to-make -a-请求后无卷曲 – JavaBoy

+0

@JavaBoy'file_get_contents'不起作用 –

回答

0

您“授权”后,必须在头文件中的空间,试试这个之一:

private function getRequest($url, $data){ 
    $uri = $this->api_url . $url; 

    $options = array(
     'http' => array(
      'header' => "Content-type: application/x-www-form-urlencoded\r\n" . 
         "Authorization: Bearer " . $this->access_token . "\r\n", 
      'method' => 'GET', 
      'content' => http_build_query($data),//$data = ['key' => 'value'] 
     ), 
    ); 

    $context = stream_context_create($options); 
    var_dump($context); //resource(70) of type (stream-context) 
    if (fopen($uri, 'r', false, $context)) //NO 
     echo "yes"; 
    else 
     echo "no"; 
    fpassthru($fp); //empty 

} 
+0

没了,并与卷曲'授权:Bearer'做工不错 –

+0

我测试过它在我的本地服务器上,并已得到了一个错误'HTTP /1.1 400错误请求和无响应。当我删除标题中的空格时,结果为“是”,没有错误。你能启用'display_errors'并将'error_reporting'设置为E_ALL吗?可能是PHP产生一定的误差,这将是有益的 – user2890234

+0

'警告:的file_get_contents(HTTP://网站/ API /路由/停止):未能打开流:HTTP请求失败! HTTP/1.1 404在73行的/home/*****api.php找不到# –