首次发布到stackoverflow。403禁止对JSONP请求的响应
我只是想使用jquery从json url获取数据。 第一个问题是交叉原点请求块,即使是用来阻止这个问题的库,比如ajax cross origin js(抱歉不提供这个链接,我太新了,没有超过2个链接),我仍然没有运气,相同的交叉原点错误。
所以我搬到了JSONP。
url = "http://take-home-test.herokuapp.com/api/v1/works.json?callback=?"
$.ajaxSetup({ dataType: "jsonp" });
$.getJSON(url, function(json) {
console.log(data);
});
(用于JSONP请求的AJAX语法我尝试过)
现在我可以将数据返回背面的网络选项卡上看到,但状态为403禁止。 pic of the response in the network tab of chrome
我正在使用http-server,您可以使用npm进行安装,以避免chrome出现json MIME类型的问题。 这个类似的堆栈溢出答案说,我需要为我的框架集成jsonp支持,但他们指的是用于ruby的sinatra。 Why Does JSONP Call Return Forbidden 403 Yet URL can be accessed in a browser
所以我尝试了npmjs jsonpclient,仍然得到了禁止的响应。
任何想法?这花了我一天的时间。
该资源是否需要某种身份验证? – nnnnnn
我很怀疑。这个API是作为公司带回家采访测试的一部分提供的。 – Sally
我相信这是API端点上的Access-Control-Allow-Origin标题的问题。 –