gpt4 book ai didi

jquery - 为什么这里不需要 JSONP ?

转载 作者:行者123 更新时间:2023-12-01 04:39:56 25 4
gpt4 key购买 nike

我只是想解决 JSON/JSONP 和跨域问题。

这是我找到的一个例子。

$(document).ready(function() {
var user = "jamesbarnett"; //treehouse username

/* get treehouse profile info via JSON */
$.getJSON("https://teamtreehouse.com/" + user + ".json", function(data) {
console.log(data);// intialize list
$("#badges").html('<ol>');
var output = "";
/* loop through the JSON, parse out badge name & icon
wrap it in some HTML. */
for (var i in data.badges) {
output += "<li>";
output +="<figure>";
output +="<figcaption>" + data.badges[i].name + "</figcaption>";
output += "<img src = '" + data.badges[i].icon_url + "'/>";
output+="</figure>";
output += "</li>";
}
$("#badges ol").append(output); // append li
$("#badges ol").append('</ol>'); // close list

/* hide spinner and then output HTML we built in the for loop */
$(".spinner").hide();
});
});

https://codepen.io/jamesbarnett/pen/oHsvr

有人可以解释一下为什么吗,在此示例中没有跨域问题(并且该人不需要使用 JSONP)

由于数据来自Treehouse域...并且正在codepen.io上显示...这不是跨域吗?

最佳答案

这是 curl -v https://teamtreehouse.com/jamesbarnett.json 的响应:

< HTTP/1.1 200 OK
... Response truncated for brevity ...
< X-Content-Type-Options: nosniff
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Methods: GET, OPTIONS
< Access-Control-Max-Age: 1728000
< ETag: W/"497006ef8221ce12b09998c0cdee8153"
< Cache-Control: max-age=0, private, must-revalidate
... Response truncated for brevity ...

注意访问控制允许来源:*。这意味着它们允许任何域发送 XHR 请求。因此,没有 CORS 错误。

关于jquery - 为什么这里不需要 JSONP ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40865311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com