这是我当前的数据:
这里的图像文件是我最近在表单上添加的,因为它已经是可以使用redux-api-middleware
进行API调用的工作表单。这是代码片段:
import { CALL_API } from "redux-api-middleware";
export function createTestAnnouncement(data) {
return (dispatch, getState) => {
const { auth: { oauthToken, oauthTokenSecret } } = getState();
return dispatch({
[CALL_API]: {
endpoint: "/api/test-announcements",
method: "POST",
headers: {
'Content-Type': 'application/json',
'xoauthtoken': oauthToken,
'xoauthtokensecret': oauthTokenSecret,
},
body: JSON.stringify(data),
types: [CREATE_TEST_ANNOUNCEMENTS, CREATE_TEST_ANNOUNCEMENTS_SUCCESS, CREATE_TEST_ANNOUNCEMENTS_FAILURE]
}
})
}
}
这是没有图像文件的代码,请注意,标题仍然是application / json,并且主体已解析为JSON。这是我在表单上带有图像文件的修改后的代码:
export function createTestAnnouncement(data) {
return (dispatch, getState) => {
const { auth: { oauthToken, oauthTokenSecret } } = getState();
const form = Object.keys(data).reduce((f, k) => {
f.append(k, data[k]);
return f;
}, new FormData());
return dispatch({
[CALL_API]: {
endpoint: "/api/test-announcements",
method: "POST",
headers: {
'Content-Type': 'multipart/form-data',
'xoauthtoken': oauthToken,
'xoauthtokensecret': oauthTokenSecret,
},
body: form,
types: [CREATE_TEST_ANNOUNCEMENTS, CREATE_TEST_ANNOUNCEMENTS_SUCCESS, CREATE_TEST_ANNOUNCEMENTS_FAILURE]
}
})
}
}
我的控制台出现错误:
错误:错误的内容类型标头,没有多部分边界
那我该如何解决呢?使用redux-api-middleware
将图像发送到API的正确方法是什么?有人可以帮我吗?