【发布时间】:2019-10-03 22:30:48
【问题描述】:
我正在尝试使用api platform file upload 上传文件。我正在使用带有 redux-saga 的 React-redux 来发出此请求,但服务器不断抛出错误的请求响应。
Api 平台文档说明了以下请求:
此端点接受标准的多部分/表单数据编码数据,但 不是 JSON 数据。您需要相应地格式化您的请求。
我的传奇:
我尝试将我上传的文件附加到 formData 并将其用作我的请求的正文。
let data = new FormData();
data.append("file", action.payload.file)
const fileResponse = yield call(
fetch,
`${api.url}/api/media_objects`,
{
method: 'POST',
mode: 'no-cors',
body: data,
headers: { 'content-type': 'multipart/form-data' }
}
);
return console.log(fileResponse);
这是发布新媒体对象的 api 平台示例请求
curl -X POST “https://api.myroute/api/media_objects”-H “接受:应用程序/ld+json”-H“内容类型:多部分/表单数据” -F "file=@1.6b.jpg;type=image/jpeg"
Api 平台不断返回 400 错误,表示输入无效。知道有效输入应该是什么样子吗?
对于我的媒体对象实体,我遵循api platform documentation,因此它看起来与文档中的完全相同
【问题讨论】:
标签: reactjs symfony react-redux redux-saga api-platform.com