2013-05-07 5 views
7

राज्य पैरामीटर Google Oauth 2.0 डॉक्स के अनुसार:गूगल OAuth 2 और राज्य पैरामीटर मान पुनर्निर्देश url में पंजीकृत करने की आवश्यकता

Indicates any state which may be useful to your application upon receipt of the response. The Google Authorization Server roundtrips this parameter, so your application receives the same value it sent. Possible uses include redirecting the user to the correct resource in your site, nonces, and cross-site-request-forgery mitigations.

मैं एक साधन के रूप में पता करने के लिए राज्य पैरामीटर का उपयोग करना चाहते हैं जो सबडोमेन मूल ओथ अनुरोध से शुरू किया गया था। लेकिन "अधिकृत रीडायरेक्ट यूआरआई" में से किसी एक के हिस्से के रूप में redirect_state पैरामीटर को पंजीकृत होने की आवश्यकता होती है। यदि नहीं, तो मैं मिलता है:

Error: redirect_uri_mismatch The redirect URI in the request: http://my_server.com/complete/google-oauth2/?redirect_state=2 did not match a registered redirect URI

मैं एक समाधान के रूप में है कि बहुत योग्य नहीं है अधिकृत रीडायरेक्ट URL में हर संभव redirect_state मूल्य दर्ज की आवश्यकता नहीं है कि चाहते हैं। विचार?

+0

http://stackoverflow.com/questions/7722062/google-oauth2-redirect-uri-with-several-parameters/26014587#26014587 धन्यवाद पर मेरा उत्तर देखें! – Kiran

उत्तर

14

पैरामीटर का नाम state (और redirect_state नहीं) है!

एक नमूना OAuth अनुरोध गूगल दस्तावेजों के अनुसार है ->

https://accounts.google.com/o/oauth2/auth? 
scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile& 
state=%2Fprofile& 
redirect_uri=https%3A%2F%2Foauth2-login-demo.appspot.com%2Fcode& 
response_type=code& 
client_id=812741506391.apps.googleusercontent.com&approval_prompt=force 

कृपया ध्यान दें State पैरामीटर और redirect_uri पैरामीटर। मुझे लगता है कि आपने दोनों को मिश्रित किया है।

संपादित करें - Google द्वारा यह link देखें। राज्य मानकों के बारे में अच्छी व्याख्या है और वेब अनुरोधों का निर्माण।

+5

आह आप सही थे। शायद इसके बजाय पहले सोने के लिए जाना चाहिए था! धन्यवाद – Henry

संबंधित मुद्दे