【问题标题】:Cross Browser call using jsonp but returning XML使用 jsonp 跨浏览器调用但返回 XML
【发布时间】:2012-09-02 05:27:16
【问题描述】:

我想使用纯客户端方法从该 URL 返回数据

http://steamcommunity.com/id/rahulkadukar/stats/TheElderScrollsVSkyrim/?tab=achievements&xml=1

这是我现在的代码

    <script type="text/javascript">
    $(document).ready(function()
    {

        var data;
        $('#New').click(function()
        {
            $.ajax({
                type: "GET",
                url: "http://steamcommunity.com/id/rahulkadukar/stats/TheElderScrollsVSkyrim/?tab=achievements&xml=1",
                dataType: "jsonp",
                success: readData(data)
            })

            function readData(data) 
            { 
                console.log(data);
            }
        });
    });
    </script>

谁能告诉我应该怎么做,以便我可以将 Steam 中的数据放入 JSON 变量中?

【问题讨论】:

    标签: jquery xml cross-domain jsonp steam


    【解决方案1】:

    你不能。

    防止 XSS 攻击的重点是确保服务器愿意将其数据嵌入到另一个域的页面中。

    因此,所有解决方案,JSONP (call of a javascript variable)CORS headers,都涉及对服务器的修改,或者从您的服务器中调用其他域服务器,以便让浏览器只能看到一个域。

    【讨论】:

    • 由于这是公开数据,因此要求 Valve 使用 CORS 服务是合理的。这才是正确的技术方案。
    猜你喜欢
    • 2012-11-05
    • 2014-05-13
    • 2013-09-15
    • 2013-09-15
    • 1970-01-01
    • 2011-03-27
    • 2015-03-23
    • 2012-08-27
    • 1970-01-01
    相关资源
    最近更新 更多