2011-10-04 185 views
5

我有json-rpc服務只接受http POST-req,並希望它使用CAS SSO身份驗證。 當前的請求流看起來大致是這樣的:CAS認證後還原原始POST請求?

POST host/service/ -> 302 redirect 
GET host/cas/login?service=https%3A%2F%2Fhost%2Fservice%2F -> 302 redirect 
GET host/service/?ticket=ST-16-0rtrEQunbcbNdP16Eu07-cas -> 302 redirect 
GET host/service/ -> 405 GET Method not supported 

我想我們需要最後GET轉換爲POST與原來的崗位體PARAMS保存。 任何提示?在spring-sec鏈中添加裸露的RequestCacheAwareFilter並沒有幫助。

回答

0

看起來像解決問題的唯一方法是避免重定向後。因此,您需要在同一個Web應用程序中將正常的GET(當您在POST上檢測到405個代碼時)發送到某個已知的接受GET服務的url以重定向到/來自CAS,然後您可以安全地使用POST。