Bing Search API的基本身份验证

时间:2016-04-03 09:38:19

标签: json azure bing bing-api bing-search

我已阅读此帖:Bing search API and Azure

我使用以下代码来模仿它:

<?php            
if (isset($_GET['bingquery'])){
    // Replace this value with your account key
    $accountKey = '***myaccountkey***';

    $WebSearchURL = 'https://api.datamarket.azure.com/Bing/Search/v1/' + 'News?$format=json&Query=';

    $cred = sprintf('Authorization: Basic %s', base64_encode($accountKey . ":" . $accountKey) );

    $context = stream_context_create(array(
        'http' => array(
            'header'  => $cred
        )
    ));

    $request = $WebSearchURL . urlencode( '\'' . $_GET["bingquery"] . '\'');

    $response = file_get_contents($request, 0, $context);

    echo $response;

} 
?>

我的AJAX电话是:

var bingquery = "bingquery=" + $('#query').val();

    $.ajax({
        url: "bingsearch.php",
        method: "get",
        dataType: "json",
        data: bingquery,
        success: function(jsondata){
            console.log(jsondata); 
        }
        });

但是,我仍然无法从Bing搜索中获取JSON格式数据,有什么建议吗?非常感谢你的帮助!

1 个答案:

答案 0 :(得分:1)

如果我理解正确你试图为你的电话做一些代理...但是你没有正确设置你的HTTP头字段,因为你的php文件从api.datamarket.azure.com收到,所以你需要要设置它们,请参阅此answer并正确设置HTTP标头,并按照here

提出您的ajax调用