【问题标题】:Jquery get request decapitalizing url stringJquery获取请求取消大写的url字符串
【发布时间】:2015-09-07 22:53:44
【问题描述】:

这是我的代码:

            $.get('top secret url and stuff',function(data){
                console.log($("[style='color:white']", data.results_html)[0].innerHTML);
                window.html = document.createElement('div');
                window.html.innerHTML = data.results_html;
                console.log($('#resultlink_0', html)[0].href) // gets url from current page code
                $.get($('#resultlink_0', html)[0].href,function(data){
                    console.log(data)
                });
            });

当我 console.log 当前页面代码中的 url 时,它是大写的。但是,在第二个 get 请求中,它取消了所有字符的大写。

以下是它会减少大写的示例:“http://steamcommunity.com/market/listings/730/%E2%98%85%20Gut%20Knife%20%7C%20Safari%20Mesh%20(Battle-Scarred)”。

相反,它变成了这样: “http://steamcommunity.com/market/listings/730/%E2%98%85%20gut%20knife%20%7C%20safari%20mesh%20(battle-scarred)”。

我知道这一点是因为,一方面,请求没有输出我想要的内容,而且我还查看了 fiddler 并且请求中的所有字符都被取消大写。

我需要解决此问题,因为上述 URL 区分大小写,如果大写字母实际上没有大写,则该 URL 将不起作用。

现在:我不知道这是否会改变任何东西,但我确实有允许在所有网站上跨域资源共享的 chrome 扩展。

【问题讨论】:

  • “一方面,请求没有输出我想要的,” - 这是一个糟糕的测试。 “我还查看了 fiddler” - 这更好,但您是否也刚刚检查了您的浏览器(F12,开发者工具)?它显示了它所做的请求,包括 Ajax 请求,以及它得到的响应。我可以想象你有一个same origin policy issue
  • 尝试使用attr('href') 而不是href 属性

标签: javascript jquery html get steam-web-api


【解决方案1】:

感谢您的帮助。事实证明这是 CORS 扩展,所以我必须在 steam 网站上本地禁用 CSP 以允许对自身发出请求。由于某些奇怪的原因,steam 甚至不允许您将请求发送到它自己的网站……在它的网站上……再次感谢。

~航空

【讨论】:

    猜你喜欢
    • 2015-03-11
    • 2015-12-09
    • 1970-01-01
    • 2014-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多