【发布时间】:2012-04-25 05:09:09
【问题描述】:
我有一个简单的 chrome 应用程序,它向运行在 tomcat 7.0 上的 servlet 发送请求。 servlet 成功接收到请求,但 chrome 应用程序从未得到响应。 chrome 应用程序接收到状态 0 和 readyState 4,并使用:
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() { alert(xmlhttp.status + " " + xmlhttp.readyState); }
xmlhttp.open("GET", http://localhost:8084/NewServlet");
xmlhttp.send(null);
我的 chrome 应用程序清单包含:
"permissions": [
"http://localhost/",
"tabs"
]
servlet 自己打开流到浏览器的流并打印一条消息。有人知道如何解决这个问题吗?谢谢!
【问题讨论】:
-
不确定
The servlet itself opens the stream to the browser and prints a message是什么意思,因为 servlet 无法做到这一点。但是如果你的函数被调用并且readyState是4,那么看起来响应被返回了,除了状态码是垃圾。您是否缺少 servlet 本身中的 HTTP 状态代码? -
servlet 有一个 HTTPResponse 对象,这就是我在处理来自浏览器的响应时所说的对象。是否必须手动设置servlet的状态码,我认为如果处理了请求,则默认为200。
标签: java javascript tomcat servlets google-chrome-extension