當我運行我的AngularJS登錄到我的後端時,出現內部問題。我可以用異常處理來解決這個問題,但真正的問題仍然存在。我想使用基本身份驗證方法,因此,我呼籲這在我的客戶端代碼:假https請求失敗服務器
function Login(username, password) {
var authdata = CreateLoginHeader(username, password);
var config = {
withCredentials: true,
headers: { 'Authorization': authdata, 'Content-Type', 'application/json' }
};
$http.post('http://brain-ratmap.rhcloud.com/api/v1/brain/study/login', config).then(SuccessLogin, ErrorLogin);
}
function CreateLoginHeader(username, password) {
var authdata = btoa(username + ':' + password);
return 'Basic uIg' + authdata;
}
當我火了這一點,我在JS得到這個錯誤:
的XMLHttpRequest無法加載http://XXXX/api/v1/login。請求的資源上沒有「Access-Control-Allow-Origin」標題。因此不允許訪問原產地'http://YYYY'。響應有HTTP狀態代碼500.
而且就像我說的,我知道如果我會處理我的異常,並仍然會返回一個響應,那麼這種POST方法應該工作。但是我所要求的是,我的基本認證不起作用 - 當我在服務器端獲得我的請求時,標頭中的Authenticate值不包含任何其他的「Basic」。
這裏也是我的所有標頭值的日誌輸出[密鑰;值的大小;值1個索引]:
2016年3月5日13:52:50610 INFO [brain.ratmap.rhcloud.com .web.service.StudyManagerService](默認任務-2)標題鍵是:Accept 2016-03-05 13:52:50,612 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2 )1 2016-03-05 13:52:50,612 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)application/json,text/plain,/ 2016-03 -05 13:52:50,612 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題密鑰爲:Accept-Encoding 2016-03-05 13:52:50,612 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)1 2016-03-05 13:52:50,613 INFO [brain.ratmap .rhcloud.com.web.service.StudyManagerService](默認任務-2)gzip,deflate 2016-03-05 13:52:50,615 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題鍵是:Accept-Language 2016-03-05 13:52:50,615 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)1 2016-03-05 13:52:50,616 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)en-US,en; q = 0.8
2016-03-05 13:52: 50,616 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認ta SK-2)標題密鑰是:授權
2016年3月5日13:52:50617 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)頭值是尺寸1
2016年3月5日13:52:50618 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)頭值包含關於第一索引基本
2016-03-05 13:52:50,620信息[brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題鍵是:連接 2016-03-05 13 :52:50,621 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)1 2016-03-05 13:52:50,629 INFO [brain.ratmap.rhcloud.com.web。 service.StudyManagerService](默認任務-2)Keep-Alive 2016-03-05 13:52:50,630 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題密鑰爲:內容長度 2016-03-05 13:52:50,630 INFO [brain.ratmap.rhcloud.com.web.service。StudyManagerService](默認任務-2)1 2016-03-05 13:52:50,630 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)90 2016-03-05 13 :52:50,630信息[brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題密鑰是:Content-Type 2016-03-05 13:52:50,630 INFO [brain.ratmap。 rhcloud.com.web.service.StudyManagerService](默認任務2)1 2016-03-05 13:52:50,631 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)應用/ JSON;字符集= UTF-8 2016年3月5日13:52:50631 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題密鑰是:主機 2016- 03-05 13:52:50,631 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)1 2016-03-05 13:52:50, 631 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)brain-ratmap.rhcloud.com 2016-03-05 13:52:50,631 INFO [brain.ratmap.rhcloud.com .web.service.StudyManagerService](默認任務-2)標題鍵是:Origin 2016-03-05 13:52:50,631 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2 )1 2016年3月5日13:52:50631 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)http://rat-investigation.rhcloud.com 2016年3月5日13:52:50632 INFO [腦.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題密鑰是:Referer 2016-03-05 13:52:50,632 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService ](默認任務2)1 2016-03-05 13:52:50,632 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認噸任務-2)http://rat-investigation.rhcloud.com/ 2016年3月5日13:52:50632 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題密鑰是:用戶代理 2016-03 -05 13:52:50,632 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)1 2016-03-05 13:52:50,633 INFO [brain.ratmap.rhcloud.com .web.service.StudyManagerService](默認任務-2)Mozilla/5.0(Windows NT 10.0; WOW64)爲AppleWebKit/537.36(KHTML,例如Gecko)鉻/ 48.0.2564.116 Safari瀏覽器/ 537.36 2016年3月5日13:52:50633 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務爲2)標題鍵是:X-Client-IP 2016-03-05 13:52:50,633 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)1 2016-03- 05 13:52:50,633 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)70.75.185.14 2016-03-05 13:52:50,633 INFO [brain.ratmap.rhcloud。 com.web.service.StudyManagerService](默認任務-2)標題密鑰爲:X-Forwarded-For 2016-03-05 13:52:50,633 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService] (默認任務2)1 2016-03-05 13:52:50,634 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)70.75.185.14 2016-03-05 13:52:50,634信息[brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題密鑰爲:X-Forwarded-Host 2016-03-05 13: 52:50,634 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)1 2016-03-05 13:52:50,634 INFO [brain.ratmap.rhcloud.com.web.service .StudyManagerService](默認任務-2)brain-ratmap.rhcloud.com 2016-03-05 13:52:50,634 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)Header關鍵是:X-Forwarded-Port 2016-03-05 13:52:50,636 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)1 2016-03-05 13: 52:50,636 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)80 2016-03-05 13:52:50,636 INFO [brain.ratmap.rhcloud.com.web。 service.StudyManagerService](默認任務-2)標題鍵是:X-Forwarded-Proto 2016-03-05 13:52:50,637 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務 - 2)1 2016-03-05 13:52:50,637信息[brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)http 2016-03-05 13:52:50,637信息[ brain.ratmap.rhcloud.com.web.service。StudyManagerService](默認任務2)標題密鑰爲:X-Forwarded-Server 2016-03-05 13:52:50,637 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2) 1 2016-03-05 13:52:50,638 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)brain-ratmap.rhcloud.com 2016-03-05 13:52 :50,638 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2)標題密鑰是:X-Request-Start 2016-03-05 13:52:50,638 INFO [brain.ratmap。 rhcloud.com.web.service.StudyManagerService](默認任務2)1 2016-03-05 13:52:50,639 INFO [brain.ratmap.rhcloud.com.web.service.StudyManagerService](默認任務-2) t = 1457203970487695
您需要在服務器上啓用CORS並處理OPTIONS預檢請求與POST不同 – charlietfl
我非常確定這不是它。我現在通過捕捉異常來處理異常,並且由於空憑證而拋出了403回。如果情況確實如此,那麼我將不得不重新獲得相同的失敗 - XMLHttpRequest無法加載http:// XXXX/api/v1/login。請求的資源上沒有「Access-Control-Allow-Origin」標題。原因'http:// YYYY'因此不被允許訪問。該響應的HTTP狀態碼爲500. –
我使用了[鏈接1](http://www.developerscrappad.com/1781/java/java-ee/rest-jax-rs/java-ee-7-jax-rs- 2-0-cors-on-rest-how-to-make-rest-apis-accessible-from-a-different-domain /)和[link 2](http://blog.dejavu.sk/2013/11/19/registering-resources-and-providers-in-jersey-2 /)來實施我的申請。這就是爲什麼我認爲問題在客戶端,因爲它應該導致相同的結果,但它不會(POST http:// XXXX/login 403(Forbidden))。 –