2012-12-05 19 views
0

我目前正在使用一個庫(SocialAuth.NET - http://code.google.com/p/socialauth-net/)來處理多個社交平臺上的登錄。Google登錄回調通過POST而不是GET

到目前爲止,在facebook和twitter上,我沒有任何問題。但是,在嘗試實施Google登錄過程時,有時(顯然是隨機)發生錯誤。

做了一些調查(調試庫,並使用招及其他)後,我通過來到的是,有時,在谷歌部分的登錄過程通過回來我的認證處理POST結論,而不是GET。 使用Fiddler,我能夠清楚地識別郵件正文內的所有參數(在POST回調的情況下)或查詢字符串(如果GET回調),所以谷歌用戶登錄我的用戶正確。

這會導致SocialAuth.NET庫方法出現異常,因爲它期望所有參數都以查詢字符串的形式傳遞,因此登錄過程失敗(在我這邊,顯然 - 谷歌認爲我登錄後側一切正常)

總之,我要問的是:爲什麼有時谷歌通過POST而不是回答我的服務器獲取?我應該採取什麼措施來避免這種情況發生,或者需要對庫內的內容進行更改嗎?

回答

0

到目前爲止,我還沒有面對Google的這個問題。它總是以查詢字符串的形式返回信息。太棒了,如果你能以某種方式確定複製的確切步驟。無論如何,如果你想修改庫檢查POST,那麼你需要改變Core/callbackHandler.cs的ProcessRequest方法(可能是第76行)。