2012-09-07 83 views
4

我是ruby和rails新手,到目前爲止我設法使用devise來設置用戶管理。現在我正在嘗試整合對移動Android和iOS應用的支持。到目前爲止,他們可以登錄和註銷並獲得身份驗證令牌。但除此之外,我還希望他們能夠註冊。Rails + Devise + API +用戶註冊

現在,我的理解是我必須做的一個帖子

http://localhost:3000/users/sign_up 

請問這個職位是什麼樣子?我如何獲得JSON響應?我在stackoverflow找到了這個。

"utf8=✓&authenticity_token=n5vXMnlzrXefnKQEV4SmVM8cFdHDCUxMYWEBMHp9fDw%3D&user[email]=asd%40fasd.org&user[password]=321&user[password_confirmation]=1233&commit=Sign+up" 

不幸的是,這不起作用 - 我收到消息「壞請求」。我也對這個例子有幾個問題。什麼是authenticity_token?我如何獲得一個?這不是我設想的令牌認證,因爲用戶甚至無法在此時擁有一個認證。

此外,成功登錄後,我希望將「註冊成功」消息與生成的設計身份驗證令牌捆綁在一起。所以我想我必須以某種方式擴展設計現有的註冊控制器。

非常感謝您提前!

回答

4

設計已經擁有了所有這些設置。根據您的註冊路徑,我推斷您將Devise安裝到http://localhost:3000/users。 Devise包括所有需要的控制器和視圖,包括登錄表單,註冊表單,電子郵件確認表單和密碼重置表單。

GET http://localhost:3000/users/sign_up實際上是用戶註冊的表單。該頁面上的表單將張貼到http://localhost:3000/users/,發送到Devise的註冊控制器的創建操作。

假如沒有什麼動作/視圖已經在/users/sign_up,在註冊表單應該有,去檢查它是否有(假設你在routes.rb文件中設置正確devise_for)。

+0

感謝您的澄清。我的sign_up視圖可用。現在註冊到/ users /的帖子正在工作。答案如下所示:{「created_at」:「2012-09-07T12:59:51Z」,「email」:「[email protected]」,「id」:3,「updated_at」:「2012-09- 07T12:59:51Z「} 我想在此響應中接收設計認證令牌,以便用戶可以在訪問api時使用此令牌。如何去做呢?我想我必須覆蓋設計師的註冊控制器? –

+0

如果您希望控制器做一些不同的或額外的事情,您可以在https://github.com/plataformatec/devise#configuring-controllers上覆蓋設計控制器 - info。 – ronalchn

相關問題