2013-07-02 67 views
0

我试图从服务器检索数据,通常返回它在XML,但我试图以JSON格式请求它(如果请求正确,它将返回数据在JSON)。从PHP请求JSON

$header = array(
      'http' => array(
      'header'=>"Content-type: application/json" 
      ), 
     ); 

$response = file_get_contents($query, false, $header); 
print_r($response); 

该方法取自here。目前该程序不返回任何内容。 有没有人发现任何潜在的问题呢?

+0

管理您请求的服务器或应用程序的人应该能够告诉您如何正确请求该特定服务器或应用程序的JSON。 –

+0

@SajanParikh:HTTP标准还告诉你如何。 http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1 – SLaks

+0

@SLak当然,但您要求的应用程序或服务器必须遵守。 –

回答

3

您需要设置HTTP Accept头告诉服务器,你希望它给你JSON:

Accept: application/json 

(假设远程服务器正确实现读取头)


Content-Type请求 header指示您正在发送的有效负载的类型。
就你而言,它不适用,因为你正在发送一个GET请求。

+0

打败我吧。 +1 –