爲了抵制同源策略,我創建了一個Java Servlet,它充當我的AJAX請求的代理服務器,以從其他位置獲取XML。強制servlet從URL返回任何內容,而不是java.io.IOException?
問題是,任何HTTP錯誤響應都不會返回到我的客戶端,而是被捕獲爲異常並記錄下來。
我怎麼能強迫該servlet不管它發現是否返回其404,500等
這是我的日誌
java.io.IOException: Server returned HTTP response code: 500 for URL:
或 java.io.IOException: Server returned HTTP response code: 403 for URL
一個例子:
這裏是我的代碼:
String url = "http://www.test.com/test.xml";
URL kcim = new URL(url);
URLConnection kciconn = kcim.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(kciconn.getInputStream()));
String inputLine;
PrintWriter out = kciResponse.getWriter();
while ((inputLine = in.readLine()) != null)
{
//output to client
out.println(inputLine);
}
//close output stream
System.in.close();
in.close();
所以在su當我收到一個HTTP錯誤代碼後,mmary servlet會自行破壞,導致我從servlet中獲取HTTP 500 Server錯誤,而不是從正在訪問的資源中獲取真正的HTTP代碼。
我該如何阻止它中斷並強制servlet返回它返回的內容?
感謝
所以你想客戶瞭解與迴應的內容一起響應狀態代碼。那是對的嗎 ? –
是的,servlet收到的任何東西我想傳遞到客戶端 – kaleeway