gpt4 book ai didi

jquery - 跨域 jQuery .AJAX 问题

转载 作者:行者123 更新时间:2023-12-01 03:23:50 24 4
gpt4 key购买 nike

我正在尝试使用 jQuery 的 .AJAX 函数向 IPINFODB 的 API 发送请求,以获取访问我们网站的用户的地理位置。

问题是,据我所知,jQuery 的 .AJAX 函数不允许跨域请求,因此不会返回任何内容。

以下代码会发出[空白]警报

$.ajax({
type: "POST",
url: "http://api.ipinfodb.com/v3/ip-city/ip_query.php",
data: "key=***********&format=json&ip=<?php echo $_SERVER['REMOTE_ADDR']; ?>",
success: function(r) {

alert(r);

}
});

我已经尝试了 .AJAX 请求的所有参数变体,例如 GET、JSON、blah blah blah,但仍然一无所获。有谁知道通过 AJAX 向此 API 发出请求的另一种方式吗?最好不要使用 YQL。

最佳答案

这可以通过 AJAX 来完成。您将需要使用 JSONP 来解决跨域问题。

这是代码:

$.getJSON("http://api.ipinfodb.com/v3/ip-city/?key=API_KEY&format=json&callback=?" )
.error (function () {
// error code
})
.success(function (result) {
// success code
console.log(result);
console.log("your location is", result.latitude, result.longitude);
});

您需要将 API_KEY 替换为您自己的 API key 。

关于jquery - 跨域 jQuery .AJAX 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7236585/

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