4
我最近開始用rails 5開發REST API。我正在嘗試通過API調用來完成用戶原始操作。我爲用戶建立了一個基本的設計。用戶註冊通過API設計
在我的路線我有這樣的:
Rails.application.routes.draw do
devise_for :users, :controllers => {sessions: 'sessions', registrations: 'registrations'}
end
我創建了兩個獨立的控制器sessions_controller和registrations_controller覆蓋設計方法,並使其接受JSON格式。
class RegistrationsController < Devise::RegistrationsController
respond_to :json
end
和
class SessionsController < Devise::SessionsController
respond_to :json
end
我試圖通過註冊在以下數據的用戶:
{
user: {
email: [email protected],
password: password,
password_confirmation: password
}
}
我得到一個狀態200,但在我導軌的服務器我得到出現以下錯誤:
Started POST "/users" for 23.233.9.94 at 2016-12-22 08:22:11 +0000
Processing by RegistrationsController#create as */*
Parameters: {"Payload: { \r\n user: {\r\n email: [email protected],\r\n password: password,\r\n password_confirmation: password\r\n }\r\n}"=>"[FILTERED]"}
(0.2ms) begin transaction
(0.1ms) rollback transaction
Completed 200 OK in 5ms (Views: 0.2ms | ActiveRecord: 0.3ms)
所以我基本上有2個問題。 如何格式化JSON,以便我的設計控制器識別它並將其保存到數據庫。 而我的第二個問題是我如何傳遞CSRF令牌。一個小例子真的可以幫助我。 在此先感謝。
您發佈的數據是不是有效的JSON將字符串括起來。您的配置似乎沒問題,但我認爲如果您傳遞有效的JSON,控制器將開始識別它。 – 31piy