本地模拟接口请求
bash
# 启动sever
pnpm run start:debug
js
const BASE_URL = 'http://localhost:3000/file';
远程 mock 接口请求
js
const BASE_URL = 'https://tiny-uploader-server.vercel.app/file';
请求示例
check
js
axios.get(`${BASE_URL}/check`, {
params: {
hash: 'xxxx-xxxx-xxxx',
filename: 'xxx.png',
status: 'none', // none, part, waitMerge, success
},
});
返回结果1:
json
{
"code": "00000",
"statusCode": 200,
"message": "success",
"data": {
"filename": "xxxx-xxxx-xxxx",
"hash": "xxx.png",
"status": "none",
"data": false
}
}
返回结果2: 文件status为part
json
{
"code": "00000",
"statusCode": 200,
"message": "success",
"data": {
"filename": "xxxx-xxxx-xxxx",
"hash": "xxx.png",
"status": "part",
"data": [0, 2, 4, 6, 8, 10] // 已经上传成功chunk的索引值
}
}
返回结果3: 文件status为waitMerge
json
{
"code": "00000",
"statusCode": 200,
"message": "success",
"data": {
"filename": "xxxx-xxxx-xxxx",
"hash": "xxx.png",
"status": "waitMerge",
"data": ""
}
}
返回结果3: 文件status为success
json
{
"code": "00000",
"statusCode": 200,
"message": "success",
"data": {
"filename": "xxxx-xxxx-xxxx",
"hash": "xxx.png",
"status": "success",
"data": "https://baidu.com"
}
}
http状态码异常500
json
{
"statusCode": 500,
"message": "/file/check mock error !",
"data": null
}
code码异常00003
json
{
"code": "00003",
"statusCode": 200,
"message": "mock error",
"data": null
}
upload
js
const data = {
hash: 'xxxx-xxxx-xxxx',
filename: 'xxx.png',
index: 2,
file: binary,
};
const formData = new FormData();
Object.entries(data).forEach(([key, value]) => formData.append(key, value));
axios.post(`${BASE_URL}/upload`, { data: formData });
返回结果
json
{
"code": "00000",
"statusCode": 201,
"message": "success",
"data": {
"filename": "xxx.png",
"hash": "xxxx-xxxx-xxxx",
"index": "2"
}
}
http状态码异常500
json
{
"statusCode": 500,
"message": "/file/upload mock error !",
"data": null
}
code码异常00003
json
{
"code": "00003",
"statusCode": 200,
"message": "mock error",
"data": null
}
merge
js
axios.get(`${BASE_URL}/merge`, {
params: {
hash: 'xxxx-xxxx-xxxx',
filename: 'xxx.png',
},
});
返回结果
json
{
"code": "00000",
"statusCode": 200,
"message": "success",
"data": "http://localhost:3000/static/xxx.png"
}
http状态码异常500
json
{
"statusCode": 500,
"message": "/file/merge mock error !",
"data": null
}
code码异常00003
json
{
"code": "00003",
"statusCode": 200,
"message": "mock error",
"data": null
}
mock接口异常
TIP
接口参数中添加下面两个参数来模拟接口异常的情况
status_error
有值时来模拟返回接口错误,返回http
请求status状态码为500
; 正常返回为200
code_error
有值时来模拟返回接口错误,返回http
请求status状态码为200
; 正常返回code码为"00000"
, 错误code码为"00003"