ajax 访问8080端口,如何使用jQuery在其他端口上发送AJAX请求?

您不能POST跨域,子域或端口号信息。但是,如果您可以同时访问守护程序和请求站点,则可以使用JSONP 。如果需要返回数据,则daemon需要支持callback查询参数并以正确的格式返回它。

将信息传递给守护程序:

$.getJSON('http://domain.com:8080/url/here?callback=?', {

key: 'value',

otherKey: 'otherValue'

}, function(data){

// Handles the callback when the data returns

});

现在,只需确保您的守护程序可以处理该callback参数。例如,如果callback=mycallback守护程序的返回(唯一写入页面的内容)应如下所示:

对于键/值对:

mycallback( {'returnkey':'returnvalue', 'other':'data' });

对于数组:

mycallback( [1,2,3] );

如果没有JSONP或类似机制,则无法使用jQuery进行跨域通信。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当前端使用jQuery Ajax与后端Java程序使用JSON进行交互的示例(GET请求)可以按照以下步骤进行: 前端代码(HTML文件中的JavaScript部分): ```javascript $.ajax({ url: 'backend-url', // 后端接口的URL type: 'GET', // 请求类型为GET dataType: 'json', // 响应数据类型为JSON success: function(data) { // 请求成功后的回调函数 console.log(data); // 在控制台打印响应数据 // 处理响应数据 }, error: function(error) { // 请求失败后的回调函数 console.log(error); // 在控制台打印错误信息 // 处理错误信息 } }); ``` 后端代码(Java程序): ```java import org.json.JSONObject; // 定义后端接口的处理逻辑 public class BackendHandler { public JSONObject handleRequest() { // 处理GET请求的逻辑 JSONObject response = new JSONObject(); response.put("message", "Hello, world!"); return response; } } // 启动后端服务的入口类 public class BackendServer { public static void main(String[] args) { // 创建后端接口处理器实例 BackendHandler handler = new BackendHandler(); // 创建服务器实例,监听指定的端口 int port = 8080; Server server = new Server(port); // 创建HTTP处理器,处理GET请求 server.createContext("/", (exchange) -> { if ("GET".equals(exchange.getRequestMethod())) { // 处理GET请求 JSONObject response = handler.handleRequest(); // 设置响应头,指定响应内容类型为JSON exchange.getResponseHeaders().set("Content-Type", "application/json"); // 发送响应码和响应体 exchange.sendResponseHeaders(200, response.toString().getBytes().length); OutputStream responseBody = exchange.getResponseBody(); responseBody.write(response.toString().getBytes()); responseBody.close(); } else { // 处理其他请求 exchange.sendResponseHeaders(405, -1); // 返回"Method Not Allowed"状态码 } }); // 启动服务器 server.start(); System.out.println("Server started on port " + port); } } ``` 请注意,上述代码只是一个示例,具体的后端处理逻辑和前端接口URL需要根据实际情况进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值