请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于上传接口的问题

目前已知FormData可以单独传递文件,但单独传文件服务器报500(怀疑是没有加icode的缘故),请问如何把icode也加进去?

正在回答

6回答

同学们大家好 慕课网上传接口已经修复,拦截器中要针对 formData 单独做一下配置,要不然它的数据会被覆盖掉,代码如下

axios.interceptors.request.use(config => {
    ...
    config.params = { ...config.params, icode: 'XXX' }
    if (config.data instanceof FormData) {
        config.data.append('icode', 'XXX')
    } else {
        config.data = { ...config.data, icode: 'XXX' }
    }
    return config
})


0 回复 有任何疑惑可以回复我~
张轩 2020-10-10 14:29:22

各位同学 是慕课网大家使用的防盗接口的转发问题 文件现在转发出现了一些问题 我已经联系到工程师 他们正在弄 修复好了给大家答复

0 回复 有任何疑惑可以回复我~
沉迷宁海 2020-10-10 12:02:51

原本在拦截器偷懒写的问题,使用

axios.interceptors.request.use(config => {
    store.commit('setLoading', true);
    store.commit('setError', { status: false, message: '' });
    config.data = { ...config.data, icode };
    config.params = { ...config.params, icode };
    return config;
});

将导致传输的FormData被抹掉,注释后使用晨曦同学提供的接口是可以正确调用的,但是接http://apis.imooc.com/api/ 仍然是500


0 回复 有任何疑惑可以回复我~
Weibsgz 2020-10-10 11:46:04

老师再给看下吧  

 <Uploader action="/upload"> </Uploader>

报"icode不能为空"  别的POST接口可以用

0 回复 有任何疑惑可以回复我~
晨曦的希望 2020-10-10 10:17:17

不需要icode也可以上传,你看下是不是上传地址的问题

https://img1.sycdn.imooc.com//szimg/5f811964094f6d0115900414.jpg


0 回复 有任何疑惑可以回复我~
提问者 linkscope 2020-10-09 20:44:29

请求的参数https://img1.sycdn.imooc.com//szimg/5f805b13090d3da103590059.jpg

返回的相应https://img1.sycdn.imooc.com/szimg/5f805b2a09fd248909430279.jpg

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信