這裏是我的代碼在JavaScript無法從Java服務器的JavaScript XMLHttpRequest的響應接收
<script type="text/javascript">
startingListener();
function startingListener() {
setInterval(function(){
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://localhost:32081/", false);
xhr.send();
var result = xhr.response;
console.log(result);
}
}, 100);
}
</script>
而且我對Java的
服務器public static void main (String... args) throws IOException, Exception {
String clientSentence;
ServerSocket welcomeSocket = new ServerSocket(32081);
while(true)
{
Socket connectionSocket = welcomeSocket.accept();
BufferedReader inFromClient =
new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
PrintWriter outToClient = new PrintWriter(connectionSocket.getOutputStream(), true);
clientSentence = inFromClient.readLine();
System.out.println("Received: " + clientSentence);
System.out.println("begin");
outToClient.println("fu");
System.out.println("Received: done");
}
}
我只想得到答案串JS和工作與它進一步。
所以,當我運行服務器和運行JS,他們連我在IDE的send()從JS
收到之後,我在Java中開始和完成收到的控制檯看到的,但在瀏覽器控制檯我沒」沒有看到任何剛剛處理的答案和腳本。我做錯了什麼?
謝謝您的幫助
你沒有提醒所有的瀏覽器?你有沒有得到任何瀏覽器開發工具控制檯錯誤?你確定你想每秒發送10個同步請求嗎?是'http:// localhost:32081 /'與網頁的起源相同嗎?嚴重的是,瀏覽器控制檯中的任何錯誤? –
我不明白你的'服務器'是如何創建瀏覽器需要的Http響應的。 –
@ScaryWombat - 是不是'outToClient.println'會做什麼? (我認爲,我對Java沒有任何線索) - 雖然,重新閱讀代碼,我明白你的意思......根本沒有http,是否有 –