1.api.ts 658 B

1234567891011121314151617181920
  1. import { defineEventHandler } from 'h3';
  2. import { forbiddenResponse, sleep } from '~/utils/response';
  3. export default defineEventHandler(async (event) => {
  4. event.node.res.setHeader(
  5. 'Access-Control-Allow-Origin',
  6. event.headers.get('Origin') ?? '*',
  7. );
  8. if (event.method === 'OPTIONS') {
  9. event.node.res.statusCode = 204;
  10. event.node.res.statusMessage = 'No Content.';
  11. return 'OK';
  12. } else if (
  13. ['DELETE', 'PATCH', 'POST', 'PUT'].includes(event.method) &&
  14. event.path.startsWith('/api/system/')
  15. ) {
  16. await sleep(Math.floor(Math.random() * 2000));
  17. return forbiddenResponse(event, '演示环境,禁止修改');
  18. }
  19. });