2012-03-23 57 views
2

我們正在Tomcat中設計一個應該跨域訪問的REST應用程序。因此,對於所有響應,我們包括著名的CORS頭:將標題添加到Tomcat7中的錯誤頁面

Access-Control-Allow-Origin: * 

然而,因爲它是一個REST服務,服務器有時返回不是200 OK HTTP響應。例如。 400,403,404,405。我們遇到的一個問題是當前這些響應不包含CORS頭,因此不能被跨域Web客戶端解釋。原來它是一個常見問題:http://www.w3.org/wiki/Talk:CORS_Enabled

在Tomcat中返回非自定義正文,頭文件等的200響應的好方法是什麼,以便我們可以設置CORS頭?

回答

1

我們的解決方案是DYI:捕獲所有異常並調用直接與身體之中的Exception

HTTPServletResponse對象的消息寫入Servlet的HTTPServletResponse一個實用的方法,你可以指定你所需要的,包括HTTP狀態代碼(我想你可以使用400作爲REST的標準)以及所有必需的頭文件,包括CORS頭文件。

相關問題