接收HTTP标头406错误

时间:2013-10-27 22:28:13

标签: php dbpedia

我正在尝试使用HTTP标头在PHP中调用http://dbpedia.org/page/Los_Angeles来进行教育任务。它必须是此URL,即我不允许直接使用JSON URL。

<?php
// Create a stream
$opts = array(
    'http'=>array(
    'method'=>"POST",
    'header'=>"Accept: application/json"
    )
);

$context = stream_context_create($opts);
$url = "http://dbpedia.org/page/Los_Angeles";
$data = file_get_contents($url,false,$context);
echo $data;
?>

我正面临这个错误:

  

警告:file_get_contents(http://dbpedia.org/page/Los_Angeles):无法打开流:HTTP请求失败! HTTP / 1.1 406不可接受。

请帮助摆脱这个错误。注意:我读到了这个错误并找到了使用CURL的建议。但是,我不想进入CURL的安装。请建议使用file_get_contents

1 个答案:

答案 0 :(得分:1)

406说应用程序/ json不可用。

来自维基百科:

406 Not Acceptable请求的资源只能根据请求中发送的Accept标头生成不可接受的内容。

<?php
    $url = "http://dbpedia.org/page/Los_Angeles";
    $data = file_get_contents($url);
    echo $data;
?>