如何解决如何让 Postman 或 Postman Collection Runner 发送带有 CSV 文件、rails 强参数的 POST 请求
在 Rails 6 api 中,我想使用 Postman 测试具有强参数的控制器。
在控制器中:
class ProcessorController < ApplicationController
...
def create
file = processor_params[:file]
...
end
private
def processor_params
params.require(:upload).permit(:file)
end
end
我必须上传此请求所需的简单 .csv 文件。
CSV 中的第一行是列标题名称(逗号分隔)。大约30行csv数据
CSV 标题为:日期、工作时间、员工 ID、工作组
这是我想在邮递员中重现的一个示例夹具:
post '/processor',params: {
upload: {
file: fixture_file_upload('report.csv','text/csv')
}
}
如何正确发布参数和正文,以便 rails API 返回 HTTP 200 响应?
我尝试通过几种方式设置邮递员请求,包括 (1) 通过 form-data
主体,
(2) 和
(3) 这个 raw
json:
{
"upload": {
"file": {
"date": "{{date}}","hours worked": {{hours worked}},"employee id": {{employee id}},"job group": {{job group}}
}
}
}
它不起作用。我总是收到诸如
之类的错误 "status": 500,"error": "Internal Server Error",#<NoMethodError: undefined method `permit' for \"file\":String>",
{
"status": 400,"error": "Bad Request","exception": "#<ActionController::ParameterMissing: param is missing or the value is empty: upload>"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。