7
我想發送的數據採用了棱角分明HTTP POST到Servlet中,角HTTP POST請求 - 無「訪問控制允許來源」標頭出現在所請求的資源
var httpPostData = function (postparameters,postData){
var headers = {
'Access-Control-Allow-Origin' : '*',
'Access-Control-Allow-Methods' : 'POST, GET, OPTIONS',
'Accept': 'application/json'
};
return $http ({
method : 'POST',
url : 'http://localhost:8080/json/jasoncontroller',
params : postparameters,
headers: headers,
data : postData
}).success (function (responseData){
return responseData.data;
})
}
,但我繼續獲得錯誤否請求的資源上存在'Access-Control-Allow-Origin'標頭。因此不允許原產地'null'訪問。
我確實對我的servlet
response.addHeader("Access-Control-Allow-Origin", "*");
response.addHeader("Access-Control-Allow-Methods", "POST, GET, PUT, OPTIONS, DELETE");
response.addHeader("Access-Control-Max-Age", "3600");
response.addHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
設置下列頭如果我刪除從HTTP數據發佈它工作正常,但沒有運氣的數據。
檢查OPTIONS請求的狀態和響應頭。那些訪問控制標題必須在預檢請求 – charlietfl
我有同樣的問題,我解決了使用'response.setHeader(「Access-Control-Allow-Origin」,「*」);'而不是'response.addHeader( 「Access-Control-Allow-Origin」,「*」);'。如果您使用'addHeader'方法,則根據API允許將相同標頭的許多值賦值。請參閱[javadoc](http://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpServletResponse.html#addHeader-java.lang.String-java.lang.String-)。 –
@charlietfl添加了網絡響應頭的圖像。 – Nomad