2017-04-05 126 views
0

我具有使用Spring框架和使用安全春天的oauth2 .. 書面每當我打電話從我的角度應用此休息服務,我得到一個CORS的支架應用跨源解決方案錯誤..這兩個應用程序都運行在我的本地機器(本地主機),但與不同的端口(8080爲後端Java和3000爲前端)..春天的oauth2

我已經在我的後端應用程序的控制器中添加@crossorigin()資源API的交叉源是固定的..但對於spring oauth2身份驗證url(/ oauth/token),總是發生這種情況..

我試過很多方法,但它不能解決我的問題。

請人幫我....

感謝

+1

請使用https://stackoverflow.com/posts/43225969/edit更新/編輯此問題,以添加您的瀏覽器在devtools控制檯中記錄的確切CORS錯誤消息。 – sideshowbarker

+0

您是否將Access-Control-Allow-Origin標頭設置爲localhost:3000作爲響應(並且訪問控制 - 允許標題:訪問控制 - 允許來源? – giaco

+0

@giaco否,我無法添加它在春天oauth2 – sam

回答

1

令牌端點(/的OAuth /令牌)是應該從應用程序的服務器端調用的授權授予代碼交換獲得令牌,所以沒有CORS規則被應用於那裏 - 不需要CORS標頭(CORS規則僅僅通過瀏覽器需要)。如果你想獲得令牌的角應用程序,你應該使用的OAuth2隱含的流動和使用iframe刷新他們 - 所以這裏不需要CORS標頭無論是。

請參閱 https://tools.ietf.org/html/rfc6749 for OAuth2授權類型和 http://openid.net/specs/openid-connect-session-1_0.html OpenID Connect會話管理。這些RFC是比較容易閱讀。