feat: 添加mock数据

This commit is contained in:
zdl
2025-11-05 17:49:15 +08:00
parent 22186eb54a
commit e617eddd46
3 changed files with 48 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
// src/mocks/handlers/external.js
// 外部服务 Mock Handler允许通过
import { http, passthrough } from 'msw';
/**
* 外部服务处理器
* 对于外部服务如头像、CDN等使用 passthrough 让请求正常发送到真实服务器
*/
export const externalHandlers = [
// Pravatar 头像服务 - 允许通过到真实服务
http.get('https://i.pravatar.cc/*', async () => {
return passthrough();
}),
// 如果需要 mock 头像,也可以返回一个占位图片
// http.get('https://i.pravatar.cc/*', async () => {
// return HttpResponse.text(
// '<svg width="150" height="150" xmlns="http://www.w3.org/2000/svg"><rect width="150" height="150" fill="#ddd"/><text x="50%" y="50%" text-anchor="middle" dy=".3em" fill="#999">Avatar</text></svg>',
// {
// headers: { 'Content-Type': 'image/svg+xml' }
// }
// );
// }),
];

View File

@@ -14,6 +14,7 @@ import { marketHandlers } from './market';
import { financialHandlers } from './financial';
import { limitAnalyseHandlers } from './limitAnalyse';
import { posthogHandlers } from './posthog';
import { externalHandlers } from './external';
// 可以在这里添加更多的 handlers
// import { userHandlers } from './user';
@@ -32,5 +33,6 @@ export const handlers = [
...financialHandlers,
...limitAnalyseHandlers,
...posthogHandlers,
...externalHandlers,
// ...userHandlers,
];

View File

@@ -108,4 +108,25 @@ export const posthogHandlers = [
);
}
}),
// PostHog feature flags 接口(特性标志查询)
http.post('https://us.i.posthog.com/flags/', async ({ request }) => {
try {
if (process.env.NODE_ENV === 'development' && process.env.REACT_APP_LOG_POSTHOG === 'true') {
console.log('[Mock] PostHog feature flags 请求:', request.url);
}
// 返回空的特性标志
return HttpResponse.json({
featureFlags: {},
featureFlagPayloads: {},
});
} catch (error) {
console.error('[Mock] PostHog flags handler error:', error);
return HttpResponse.json(
{ featureFlags: {}, featureFlagPayloads: {} },
{ status: 200 }
);
}
}),
];