从Java套接字响应AJAX请求

从Java套接字响应AJAX请求,java,javascript,ajax,sockets,xmlhttprequest,Java,Javascript,Ajax,Sockets,Xmlhttprequest,我试图让一个简单的java服务器响应XmlHttpRequest,但我不确定如何响应。现在,服务器上的套接字获得浏览器的请求。在获取套接字输出流之后,服务器向其写入数据,然后关闭所有连接。还有别的吗?我假设您需要一个头来正确响应请求,如果需要,该头将是什么。谢谢 这就是我现在正在做的。然而,我似乎无法让浏览器接受该消息 编辑: Java服务器代码: private String HEADER = "HTTP/1.1 200 OK\n" + "Cache-Control: private\n" +

我试图让一个简单的java服务器响应XmlHttpRequest,但我不确定如何响应。现在,服务器上的套接字获得浏览器的请求。在获取套接字输出流之后,服务器向其写入数据,然后关闭所有连接。还有别的吗?我假设您需要一个头来正确响应请求,如果需要,该头将是什么。谢谢

这就是我现在正在做的。然而,我似乎无法让浏览器接受该消息

编辑: Java服务器代码:

private String HEADER = "HTTP/1.1 200 OK\n" +
"Cache-Control: private\n" +
"Content-Type: text/html; charset=utf-8\n" +
"Expires: Sun, 21 Feb 2100 20:39:08 GMT\n" +
"Server: Microsoft-IIS/7.5\n" +
"Date: Sun, 21 Apr 2012 20:39:07 GMT\n" +
"Connection: close\n" +
"Content-Length: 10\n";

         browserWriter =
                new PrintWriter(
                        browser.getOutputStream(),true);

            while((data = browserReader.readLine()) != null) {
                if (data.indexOf("POST") != -1) {

                    /* TODO TEST - TAKE OUT */
                    browserWriter.println(HEADER + "APPLESAUSE");
                    browserWriter.close();
                    browserReader.close();
                    browser.close();
                    return;
Javascript:

  xmlhttp.open("POST","http://10.0.2.15:1024/password?url=" + site, false);
  xmlhttp.send(null);

所有XmlHTTPRequest都需要HTTP响应,因此需要HTTP头。一旦给出响应,就可以关闭连接。这基本上只是充当一个web服务器

一些HTTP头字段:

有关官方规范,请参见此处:


这里有一个不错的教程:

为了让浏览器理解服务器的响应,它应该根据中指定的
响应
格式有效。除了实际的响应主体之外,唯一需要的是一个状态行,如果请求成功,通常是HTTP/1.1200ok

附加的,如
内容长度
内容类型
可以帮助浏览器更有效地处理响应,但是如果您开始设置很多,那么您基本上是在实现自己的HTTP服务器,我建议在走这条路线之前使用或其他现成的东西