【问题标题】:JSON Post to railsJSON 发布到 Rails
【发布时间】:2013-12-02 20:15:24
【问题描述】:

大家好,我遇到了一个问题,在这里阅读了一些主题,但仍然无法解决我的问题。

我正在 Rails 4.0 上构建一个 API,我的控制器中有一个方法,如下所示:

def jsonApiSearch

  @firstName    = params[:fn]          #
  @lastName     = params[:ls]          #
  @eID          = params[:custid]      #
  @prod         = params[:prod]        #
  @classifation = params[:classifation]       #
  @status       = params[:status]      #
  @specialty    = params[:specialty]   #
  @aIDType      = params[:aIDType]     #
  @aID          = params[:aID]         #
  @address      = params[:address]     #
  @city         = params[:city]        #
  @state        = params[:state]       #
  @country      = params[:country]     #
  @postalCode   = params[:pc]          #
  @role         = params[:role]         
  @affiliation  = params[:affill]       
  @priorityRank = params[:pr]
  @strict       = params[:strict]  

  #do something with the data 
end 

我的路由文件有以下代码:

post '/jsonsearch', to: 'api#jsonApiSearch'

然后我向 /jsonsearch 端点发送一个发布请求。

我设置了内容类型和application/json,然后把这个作为this放到body里面:

{"message": "让我们看看这是否有效。","subject": "JSON via curl"}

我不断收到 422 Unprocessable Entity 错误。

有人知道我做错了什么吗?

已解决: 原来我启用了protect_from_forgery,这导致了一个问题。现在已经解决了。

【问题讨论】:

  • 你应该把你的答案写成答案

标签: ruby-on-rails json post


【解决方案1】:

原来我启用了protect_from_forgery,这导致了一个问题。它是默认打开的,并且在没有某种授权的情况下会停止任何非获取方法的工作。关闭它,您的帖子将开始工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-19
    相关资源
    最近更新 更多