当前位置: 首页 > 面试题库 >

jQuery Ajax在不同的端口上

耿永寿
2023-03-14
问题内容

我的php文件位于端口80(默认端口),而我的ajax调用位于端口8080上。

我在端口8080上的index.html

$(document).ready(function(){
$.get("userCheck.php", 
        {"username" : "lazy", "favcolor" : "FFFFFF" },          
        function(data){ alert("Data Loaded: " + data);
});

我的PHP

$user = $_GET["username"];
if($user == "lazy")
    echo "SUCESS";
else
    echo "FAIL";

我有点google,JSONP大多出来了。知道如何将其转换为JSONP吗?

有什么办法可以使其工作?


问题答案:

实施JSONP服务非常简单,您只需要一个 回调 GET参数,最后,打印一个包含与以JSON数据作为参数的函数调用等效的字符串:

$callback = $_GET["callback"];
$user = $_GET["username"];

if($user == "lazy") {
  $response = array("message" => "SUCESS");
} else {
  $response = array("message" => "FAIL");
}

echo $callback . "(". json_encode($response) . ");";

然后,您可以将其与jQuery一起使用$.getJSON

$.getJSON("jsonpTest.php?callback=?", { username: "lazy"}, function(json){
  alert("JSON Data: " + json.message); // SUCCESS
});


 类似资料:
  • 问题内容: 我想更改mysql docker容器的默认公开端口,但是如果我尝试使用此命令: 这没用。 如果我使用标准端口3306:3306,则工作正常,但我想更改端口。有可能吗? 我已经尝试过-p 52000:3600,但是我总是得到: 问题答案: 您需要在(服务器的)首选TCP端口上映射容器端口3306: 所以对于你的mysql

  • 我在不同的端口(80008001)上运行后端和前端,无法从express服务器生成res.redirect(…),并且浏览器显示CORS错误(访问XMLHttpRequest at…)。 这是MEVN(Mongo,Express,Vue,Nodejs)应用程序,Vue前端和Express(nodejs)后端在不同的端口上运行。我在后端实现了cors(),它使我的前端可以发出请求(get,post)

  • 让我们假设一个后端应用程序,它公开了一些Rest API,运行在地址192.168.1.10:8889的Jetty网络服务器上。 我希望有一个前端应用程序(仅限于html/javascript,在apache2 Web服务器上)在相同的IP上运行,但在不同的端口(例如8000)上运行,它应该使用后端应用程序公开的API。 我怎样才能让这个架构工作而不进入“No'Access-Control-All

  • 我想部署一个tomcat服务器,以便它同时侦听两个端口(都用于超文本传输协议)。 为了确保您正确理解这个需求,我们只有一个服务器实例,但希望侦听HTTP协议的两个端口。例如,任何人都可以使用端口号7080和8080访问部署在我的服务器中的应用程序 有可能做到吗?如果可能,我们如何实现这一点?

  • 我想netty是我所知道的最好的java网络框架,在阅读并尝试一些示例后,我有疑问: 1.使用netty 4.0为具有不同协议的多端口创建网络服务器的最佳方法是什么? 每个服务器创建: EventLoopGroup bossGroup=new NioEventLoopGroup();//(1) EventLoopGroup workerGroup=新的NioEventLoopGroup(); Se

  • 我已经将这些WAR添加到tomcat webapps文件夹中,并在 如果我为其他war在相同的主机标记中放置另一个上下文路径,我现在可以访问http://localhost:9080/apipath/mymethoduriapp1上的应用程序 服务器现在无法启动。 提前感谢帮助