gpt4 book ai didi

php - 使用 jquery 从 javascript 到 php 进行 AJAX 调用

转载 作者:行者123 更新时间:2023-11-30 13:27:07 25 4
gpt4 key购买 nike

作品:

    function jsUpvote(photo_id, username) {

//var getURL = "http://www.uglyfacez.com/gallery/upvote.php?photo_id=" + photo_id + "&username=" + username;

$.get("http://uglyfacez.com/gallery/upvote.php?photo_id=15&username=user000",
function(returnValue){
// do stuff here
});
}

我写了上面的函数在页面上运行一个 php 脚本,并通过 URL 将变量 photo_id 和 username 传递给脚本。当我硬编码时,如上所述,它工作得很好,但是当我给它 javascript 变量时(如您在 getURL 中看到的那样),它根本不起作用。例如,这是我想做的,但行不通:

$.get("http://www.uglyfacez.com/gallery/upvote.php?photo_id=" + photo_id + "&username=" + username,
function(returnValue){
// do stuff here
});

为什么这行不通,解决方案是什么?

编辑:我发现了问题所在。出于某种原因,在我的 GET url 中包含 www 会阻止它从服务器接收响应。一旦从 URL 中删除,它就可以正常工作。

最佳答案

这似乎是关于跨域请求的问题。

您可以使用一些解决方案,例如 JSONP,或者您可以从不同的域(在本例中为:www 子域)加载脚本。要查看有关跨域的不同方面和设置,请转到 the .ajax() documentation page (并搜索“cross-domain”或“crossDomain”)。

这个问题基本上是与同源政策有关的问题。关于mentioned documentation page你可以读到:

  • Due to browser security restrictions, most "Ajax" requests are subject to the same origin policy; the request can not successfully retrieve data from a different domain, subdomain, or protocol.
  • Script and JSONP requests are not subject to the same origin policy restrictions.

关于php - 使用 jquery 从 javascript 到 php 进行 AJAX 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8101993/

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