Logo

请求出现“Content type ‘application/octet-stream‘not supported“错误

photo

2023年11月01日

请求出现”Content type ‘application/octet-stream‘not supported“错误

  • 错误描述:
    Content type ‘application/octet-stream‘not supported,即内容类型’application/octet-stream ‘不支持。由此可见,我们这里传的参数需要’application/octet-stream’类型支持。
    octet-stream:任意二进制流数据。
    application/octet-stream:只能提交二进制或文件。
  • 出现错误的请求:
    POST 请求,需要传一个 file 文件和一个 json 字符串,如下图所示:
    在这里插入图片描述
    react 前端提交表单传参这样写,此时 blackListBatch 传的是 json 字符串,如下:
const { file } = values;
const formData = new FormData();
formData.append('file', file[0].originFileObj);

const newValue = _.cloneDeep(values);
delete newValue.file;
const json = JSON.stringify(newValue);
formData.append('blackListBatch', json);

const params = {
  data: formData,
  callback: () => {
    message.success(intl('导入成功'));
  },
};
// 请求接口
offlineImport(params);

然后浏览器就出现了上面的报错。

  • 解决办法:
    由错误描述可知,我们这里不能传一个json字符串,而是一个二进制,这时需要使用 Blob() 构造函数将 json 字符串转化为 Blob 对象(Blob 对象表示一个不可变、原始数据的类文件对象,它的数据可以按文本或二进制的格式进行读取)放到 formData 中,如下:
const { file } = values;
const formData = new FormData();
formData.append('file', file[0].originFileObj);

const newValue = _.cloneDeep(values);
delete newValue.file;
const json = JSON.stringify(newValue);
// 将 json 字符串转化为 Blob 对象
const blob = new Blob([json], {
 	type: 'application/json',
});
formData.append('blackListBatch', blob);

const params = {
  data: formData,
  callback: () => {
    message.success(intl('导入成功'));
  },
};
// 请求接口
offlineImport(params);

type: ‘application/json’ 表示将会被放入到 blob 中的数组内容的类型是 json 字符串。

如上,便可解决该报错。

橙子主题打折出售

其实我不卖,主要是这里是放广告的,所以就放了一个
毕竟主题都没做完,卖了也是坑.

购买它
本文为原创文章,请注意保留出处!
bootstrapSwitch 2023年10月31日

一、1、bootstrapSwitch默认选项,加上checked表示true,不加表示fals...bootstrapSwitch

在JS中对象的赋值是默认引用赋值的,如果改变了赋值对象原对象也会跟着改变,如果想要复制赋值,那么就...js引用类型赋值不改变原对象值

热门文章

Navicat Premium 12.0.22 安装与破解 一、安装  NavicatPremium12.0.22的下载链接:https://pan.ba...NavicatPremium12.0.22安装与破解 作者:Pastore Antonio
1516 浏览量
C# JArray与JObject 的使用 STEP1、usingNewtonsoft.Json.Linq;STEP2、如何获取json里的...C#JArray与JObject的使用 作者:Pastore Antonio
1466 浏览量
解决mysql的配置ONLY_FULL_GROUP_BY引起的错误 由于自己的本地网站环境使用了mysql8.0的版本,在测试一个groupby的sql查...解决mysql的配置ONLY_FULL_GROUP_BY引起的错误 作者:Pastore Antonio
1449 浏览量
Windows server 2016 英文服务器安装中文语言包教程 1、下载windowsserver2016语言包下载地址:https://pan.baidu....Windowsserver2016英文服务器安装中文语言包教程 作者:Pastore Antonio
1407 浏览量
《荒野猎人》经典语录 电影《荒野猎人》讲述19世纪的一个皮草猎人休·格拉斯在一次打猎中受了重伤,而后两个被船长雇用照顾他的人为了夺取他的财产,杀害了他的儿子,并把他丢在荒野中自生自灭。格拉斯在荒野中度过了艰难的几个月后开始了复仇。电影《荒野猎人》由迈克尔·彭克同名小说改编而成,夺得第73届金球奖和第88届奥斯卡金像奖多项大奖,男主角莱昂纳多凭借这部作品终于得到奥斯卡小金人。 作者:Pastore Antonio
1396 浏览量