2012-05-30 65 views
0

我使用GAE Python和我可以要求用戶使用,以在與谷歌:讓用戶使用Google註冊並在之後重定向回站點?

loginURL = (users.create_login_url(self.request.path))

這給了我一個鏈接,讓用戶登錄並重定向到我的網站。 但是有些用戶沒有Google ID, 有什麼辦法讓他們註冊爲爲一個,並被重定向到我的網站?

我知道有沒有:

signupURL = (users.create_signup_url(self.request.path))

這就是我在尋找,要求用戶註冊並擁有,當她完成她的迅速重定向之類的話。

非常感謝您的任何見解。

+0

我沒有答案,但最好不要限制這個系統給谷歌。許多其他提供商可以提供OpenID ... – glglgl

+0

僅供參考:當用戶發送到登錄URL時會發生什麼情況?他們沒有看到包含鏈接的登錄屏幕「註冊Google帳戶」嗎?如果是這樣,那麼這個過程是否會最終重定向到登錄將重定向到的地方?Google可能希望您只是使用'create_login_url'的結果,並讓用戶決定是否需要註冊或使用現有帳戶。 –

回答

0

實際上,可以將用戶引導到訂閱頁面。 這僅僅是一個小技巧:

你在外觀簽署這樣的鏈接:

https://www.google.com/accounts/ServiceLogin?service=ah&passive=true&continue=https://appengine.google.com/_ah/conflogin%3Fcontinue%3Dhttp://study-wise.appspot.com/login&ltmpl=gm&shdf=ChULEgZhaG5hbWUaCVN0dWR5V2lzZQwSAmFoIhRSjkTO01_PtfPG9VN12NFsbyludCgBMhQrFIvLEm2lqCc65PvVrBca1skQRA 

凡在我的情況:http://study-wise.appspot.com/login是應用程序的URL。 shdf似乎是谷歌用來跟蹤請求的一些關鍵。但是我還沒有發現它

任何線索現在註冊鏈接將是:

https://accounts.google.com/NewAccount?continue=https%3A%2F%2Fappengine.google.com%2F_ah%2Fconflogin%3Fcontinue%3Dhttp%3A%2F%2Fstudy-wise.appspot.com%2Flogin&shdf=ChULEgZhaG5hbWUaCVN0dWR5V2lzZQwSAmFoIhRSjkTO01_PtfPG9VN12NFsbyludCgBMhQrFIvLEm2lqCc65PvVrBca1skQRA&service=ah&ltmpl=gm 

的網址:

https://www.google.com/accounts/ServiceLogin 

https://accounts.google.com/NewAccount 

更換
passive=true 

已被刪除。據我所知,沒有其他變化。

這裏是Python函數我寫道:

def login2Subscribe(link): 
    return link.replace('https://www.google.com/accounts/ServiceLogin', 'https://accounts.google.com/NewAccount').replace('passive=true', '') 

您可以使用它像這樣:

viewVals['subscribe'] = login2Subscribe(users.create_login_url("/login")) 
1

當用戶轉到登錄網址時,頂部會出現紅色的「註冊」按鈕。他們可以去那裏註冊。

我花了我一秒也找不到,不幸的是你不能改變登錄頁面。

+0

是的,但是如果我想讓他們直接進入註冊鏈接呢? – zehelvion