Flutter 中的 Base64 字符串 HTTP Post
Posted
技术标签:
【中文标题】Flutter 中的 Base64 字符串 HTTP Post【英文标题】:Base64 String HTTP Post in Flutter 【发布时间】:2021-10-15 13:43:37 【问题描述】:我无法使用 Post 函数发送 base64 字符串,我得到的唯一错误是: “状态不佳:无法设置内容类型为‘multipart/form-data’的请求的正文字段。” 当我删除标题时,我收到此错误:“XMLHttpRequest 错误。” 有谁知道我该怎么做? 我还尝试了在线转换器中的 base64 代码,以确保我的字符串正常。
TextButton(
onPressed: () async
final base64 = await documentToBase64(document);
final urlEncBase64 = Uri.encodeComponent(base64);
final uri = Uri.parse(myurl);
await http.post(uri,
headers:
'content-type': 'multipart/form-data'
,
body:
'b64': '$urlEncBase64',
).then((res)
print(res.statusCode);
).catchError((err)
print(err);
);
,
child: const Text('Send'),
),
【问题讨论】:
你试过用 application/json 代替 'multipart/form-data' ***.com/questions/49125191/… 【参考方案1】:如果你想以 JSON 格式的字符串发送数据,你应该使用另一种内容类型
'content-type': 'application/json'
但是,如果您想使用 multipart/form-data 类型,您应该遵守本指南。 https://dev.to/carminezacc/advanced-flutter-networking-part-1-uploading-a-file-to-a-rest-api-from-flutter-using-a-multi-part-form-data-post-request-2ekm
【讨论】:
【参考方案2】:正确的答案是禁用网络安全,因为我试图通过远程连接访问 php。 How to solve flutter web api cors error only with dart code?
并删除错误的标题。
【讨论】:
以上是关于Flutter 中的 Base64 字符串 HTTP Post的主要内容,如果未能解决你的问题,请参考以下文章
将base64字符串编码的图像/字节图像作为图像在Flutter中用于Firebase ML Vision中进行处理