You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无需代码调用,能否在浏览器查看Mirage JS的API响应?路由访问问题

问题描述

我已经通过以下代码创建Mirage JS服务器,配置了GET /api/reminders路由:

import { createServer } from "miragejs"

export default function () {
  createServer({
    routes() {
      this.get("/api/reminders", () => ({
        reminders: [
            { id: 1, text: "Walk the dog" },
            { id: 2, text: "Take out the trash" },
            { id: 3, text: "Work out" },
          ],
      }))
    },
  })
}

目前通过组件代码调用该接口可正常获取响应,但直接在浏览器地址栏访问https://localhost:3000//api/reminders时无法得到预期响应。想知道:

  • 是否可以直接通过浏览器发起请求查看Mirage JS的API响应?
  • 当前操作存在什么问题?
解答

能不能直接通过浏览器查看Mirage的API响应?

可以,但得用符合Mirage工作逻辑的方式,不能直接通过地址栏访问。

当前操作的核心问题

Mirage JS的核心是拦截当前页面内JavaScript发起的AJAX/fetch请求,它运行在浏览器的页面JS环境中。而地址栏输入URL发起的请求是浏览器独立发起的全新请求,不会经过Mirage的拦截层,自然无法触发Mirage的路由响应。另外你输入的地址存在双斜杠//的格式问题,规范地址应为https://localhost:3000/api/reminders,不过这不是无法获取响应的核心原因。

如何在浏览器中查看Mirage的API响应

  • 通过浏览器控制台发起请求:打开页面开发者工具(F12),切换到Console标签,输入以下代码执行:
    fetch('/api/reminders').then(res => res.json()).then(data => console.log(data))
    
    执行后就能在控制台看到Mirage返回的reminders数据。
  • 通过页面内交互触发:像你现有组件的逻辑那样,通过页面内的操作发起请求并渲染结果,直接在页面上查看响应内容。

内容的提问来源于stack exchange,提问作者Sultan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 08:15:46