【发布时间】:2022-01-12 19:31:35
【问题描述】:
我正在尝试将 expo 的图像选择器返回的 base64 字符串传递给 POST api 调用。以下是代码sn -p
var { cancelled, uri, base64 } = await ImagePicker.launchCameraAsync({
mediaTypes: ImagePicker.MediaTypeOptions.Images,
base64: true,
});
const payload = {
File_String: base64,
};
let response = await fetch(route, {
method: "POST",
headers: {
Authorization: token,
Accept: "application/json",
"Content-Type": "application/json",
},
body: JSON.stringify(payload),
});
let responseJson = await response.json();
后端 api 系统已使用 .net 核心开发。 expo 的 imagepicker 返回的 Base64 字符串很长,当它使用 fetch 调用发送时,它不会在后端接收到。我从客户端对后端的所有其他调用都可以正常工作,除了这个,唯一的区别是我在有效负载中发送大的 base64 字符串。
我无法弄清楚为什么调用失败以及我是否需要对 fetch 调用(即客户端/api 端,即后端)进行任何特殊设置,以便发送 n 接收 base64 字符串值?
谁能指导我无法通过 base64 字符串从 react native 发送到 .net core api 的原因/错误?
问候,
【问题讨论】:
标签: react-native base64 expo http-post fetch-api