Javascript Jquery与本地服务器的通信
因此,我试图通过jquery post方法与本地java服务器通信,但我运气不太好。我使用的邮政编码是:Javascript Jquery与本地服务器的通信,javascript,jquery,servlets,Javascript,Jquery,Servlets,因此,我试图通过jquery post方法与本地java服务器通信,但我运气不太好。我使用的邮政编码是: $.post('localhost:5051/receive', {'plugs':client['plugins']}); 其中client['plugins']是一个具有确认值的字符串 我试图接收此信息的servlet是(所有必要的导入): 这个servlet似乎没有从post方法接收任何通信 请注意,javascript运行在我刚刚在浏览器中打开的本地html文件上 以下是包
$.post('localhost:5051/receive', {'plugs':client['plugins']});
其中client['plugins']是一个具有确认值的字符串
我试图接收此信息的servlet是(所有必要的导入):
这个servlet似乎没有从post方法接收任何通信
请注意,javascript运行在我刚刚在浏览器中打开的本地html文件上
以下是包含所有必要导入的基本服务器代码:
public class BaseServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public BaseServlet() {
super();
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String plugins = request.getParameter("plugs");
System.out.println("HERE");
System.out.println(plugins);
}
}
public class MyServer {
public static void main(String[] args) throws Exception {
Server server = new Server();
Connector connector = new SocketConnector();
connector.setPort(5051);
server.setConnectors(new Connector[]{connector});
ServletHandler handler=new ServletHandler();
server.setHandler(handler);
handler.addServletWithMapping("BaseServlet", "/receive");
server.start();
server.join();
}
}
谢谢,如果这是很直观的话,我很抱歉。当你说$.post('localhost:5051/receive'
你可能是指$.post('http://localhost:5051/receive“
但这仅在您已经在使用该主机和端口的情况下才起作用(出于安全原因限制此操作)因此,您最好使用相对URI并说$.post('/receive'
编辑。我刚刚发现:
请注意,javascript运行在我刚刚在浏览器中打开的本地html文件上
正如我前面所说,JS运行的页面必须作为请求数据的URI打开。感谢您的帮助,但不幸的是,这并没有解决问题。