使用Chrome扩展程序将JS中的基本请求发送到我的Rails API

时间:2013-04-27 18:17:34

标签: javascript jquery ruby-on-rails api

我正在编写一个Chrome扩展程序,我想与我的Rails API进行对话。

user有一个emailpassword

现在我的users_controller看起来像这样:

  def create
    @user = User.new(params[:user])

    if @user.save
      render json: @user, status: :created, location: @user
    else
      render json: @user.errors, status: :unprocessable_entity
    end
  end

在Chrome控制台中,我正在测试一些创建操作,例如

$.post('http://localhost:3000/users', "me@example.com");

返回:

{
user: {
created_at: "2013-04-27T18:11:57Z",
email: null,
id: 2,
password: null,
updated_at: "2013-04-27T18:11:57Z"
}
}

有关如何点击我的API并创建新用户的任何建议?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可能需要提供一个JavaScript对象,其中的键/值对表示要在服务器上构建的用户模型的属性。试试这个:

$.post('http://localhost:3000/users', {email: "me@example.com"});

编辑:如果您的Rails控制器中未启用parameter wrapping,则需要使用user键明确包装您在POST请求中发送的参数:

$.post('http://localhost:3000/users', {user: {email: "me@example.com"}});