Bing Image Archive Ajax错误

时间:2015-10-07 13:41:00

标签: javascript json ajax request bing

我已经向Bing发出了Ajax调用以获取其日常图像,但是我在控制台中收到错误:

enter image description here

这是使用wamp的本地主机上的完整代码

的index.php

<head>

    <script src="jquery.min.js"></script>
</head>
<body>
    <div id="output"></div>
</body>

<script type="text/javascript">

    $.ajax({
        url : "http://bing.com/HPImageArchive.aspx?format=js&idx=0&n=1",
        dataType:"jsonp",
    });

    function mycallback(data)
    {
        $('#output').html(data.images[0].url);
    }

</script>

2 个答案:

答案 0 :(得分:0)

我认为你应该研究documention for jquery ajax call.

<head>
    <script src="jquery.min.js"></script>
</head>
<body>
    <div id="output"></div>
</body>

<script type="text/javascript">

(function() {
  var bingImagesUrl = "http://bing.com/HPImageArchive.aspx";
  $.getJSON( bingImagesUrl, {
    idx:0,
    n:1,
    format: "js"
  }).done(function( data ) {
        $('#output').html(data.images[0].url);
  });

})();

</script>

答案 1 :(得分:0)

@Below_the_Radar:您的回答并没有真正的帮助,因为OP即使正确地调用了Ajax也可能会遇到相同的错误。

根据Is there a way to get Bing's photo of the day?,Bing.com似乎仅支持XML,JSON和RSS。我猜OP可能想用dataType: "jsonp"打电话,可能是因为他想绕过浏览器的同源策略。

这可以通过使用Chrome extension在浏览器中的客户端解决,但是我想这不是OP的用例。我敢打赌,OP试图从Bing的档案库中获取图片,并在他自己的网站中使用它。如果真是这样,那就没有办法了,因为我们需要在Bing返回的响应标头中添加"Access-Control-Allow-Origin": "*",而我们没有控制权。

我建议考虑替代方法。试试这个:https://source.unsplash.com/