最近遇到一个问题,后端是用egg.js作为接口,在前端请求上传接口的时候由服务端通过官网给的upyun
上传到又拍云,服务端在操作的时候会报错,不知道是哪里没有配置好。有人遇到过吗?大家一起帮忙解决一下好吗?谢谢啦
// 前端接口
const upyun = require('upyun');
const Controller = require('egg').Controller;
const path = require('path');
const fs = require('fs');
// 初始化 该账号有所有的权限
const service = new upyun.Service('服务名', '账号', '密码');
const client = new upyun.Client(service);
class FileController extends Controller{
async index(){
const {ctx} = this;
// 获取 steam
const stream = await ctx.getFileStream();
client.putFile('/',stream).then( res =>{
console.log(res)
}).catch(err =>{
console.log(err)
})
}
}
module.exports = FileController;
在请求的接口的时候会报错,错误信息如下
Error: upyun - response error: Request failed with status code 406
at H:\A_Projects\blog\egg-server\node_modules\upyun\dist\upyun.common.js:1576:13
at processTicksAndRejections (internal/process/task_queues.js:94:5)
问题已经解决了,
putFile('/a/文件名',stream)
就可以了我没有加上文件名,太大意了