解析请求参数时出错(Parse error 783)

Error ocurred while parsing request parameters (Parse error 783)

我正在构建一个 api,我 POST(创建)的路线是 /api/v1/studios

控制器

def create
  @studio = Studio.new(studio_params)

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

private
 def studio_params
     params.permit(:name)
 end

当我尝试通过 curl 创建实例时 ->

curl -X POST -v http://localhost:3000/api/v1/studios -H "Content-Type: application/json" -d '{"name":"studio1"}'

我得到的只是标题上写的这个错误。

Parsing error, could not resolve host: studio1}'

在 development.log 中我得到:

ActionDispatch::Http::Parameters::ParseError(783:在“{name:Disney}”处出现意外标记):

解析请求参数时出错。 内容:

'{name:迪士尼}'

如果 curl 命令是您的 运行,那么您的 shell 处理各种引号的方式可能存在问题。这是 bash 格式,因此如果您的 shell 不符合该标准,您将遇到莫名其妙的语法错误。