2017-04-12 176 views
0

尝试使用使用Buzz了卷曲/的file_get_contents在我的Symfony应用程序从检索数据一样东西,你可以在这里看到:403呼叫api.weather.gov使用Buzz了客户端瓦特/ HTTPS

https://api.weather.gov/points/44.3537,-73.8636/forecast/hourly

不管什么,我似乎得到一个403禁止错误,我想知道如果有人有任何建议?

$location = sprintf(
     '/points/%f,%f/forecast/hourly', $this->latitude, $this->longitude 
    ); 

    $request = new Request('GET', $location, 'https://api.weather.gov'); 
    $response = new Response(); 

    try { 
     $this->httpClient->send($request, $response); 
    } catch (\Exception $e) { 
     throw new ServiceResponseException('Failed to send Request', 0, $e); 
    } 

    if (!$response->isSuccessful()) { 
     throw new ServiceResponseException('Unsuccessful Response', $response->getStatusCode()); 
    } 

    return $response->getContent(); 

在巴斯” FileGetContents类

$url = $request->getHost().$request->getResource(); 

$ URL计算结果为: https://api.weather.gov/points/44.353700,-73.863600/forecast/hourly

相同的卷曲度

页眉返回

Array ([0] => HTTP/1.1 403 Forbidden [1] => Server: AkamaiGHost [2] => Mime-Version: 1.0 [3] => Content-Type: text/html [4] => Content-Length: 334 [5] => Expires: Thu, 13 Apr 2017 14:15:56 GMT [6] => Date: Thu, 13 Apr 2017 14:15:56 GMT [7] => Connection: close) 
+0

向我们显示您的代码 – ATechGuy

+0

对不起@ATechGuy,刚刚添加了我使用的一个blurb – jackie

回答

1

您需要设置AcceptVersionUser-Agent标题。