我try 实现axios-mock-adterter只是为了模拟(而不是单元测试),而后端是这样做的.
我正在使用Nextjs V.13、axios和axios-mock-adperter
1-AxiosMock和模拟初始化器
import axios from "axios";
import MockAdapter from "axios-mock-adapter";
export function createAxiosInstace() {
const axiosInstance = axios.create({
baseURL: "http://localhost:3000",
});
return axiosInstance;
}
const mock = new MockAdapter(createAxiosInstace());
export default mock;
2-模拟支付终结点
import mock from "../axiosMock";
mock.onPost("/api/payments").reply(() => {
const paymentStatus = {
id: "5e8891ab188cd28",
status: "aproved",
email: "jane@test.com",
name: "Jane Doe",
};
return [200, { paymentStatus }];
});
3-以我们(工作空间)使用的方式使用函数
import { createAxiosInstace } from "@/lib/axiosMock";
export async function sendPayment() {
const response = await createAxiosInstace()
.post("/api/payments")
.then((response) => {
return response;
})
.catch((error) => {
return error;
});
return response;
}
4-获取404错误:) Error Image个