我如何独自构建 Mock API 平台并将其部署到生产环境

发布: (2026年3月9日 GMT+8 03:01)
4 分钟阅读
原文: Dev.to

Source: Dev.to

Introduction

每个我参与的项目都有同样的挫败感。
前端团队已经准备就绪,QA 已经就位,演示定在明天。
但后端还没准备好。于是大家只能等待。

我在小项目、代理公司、创业公司里都见过这种情况。它已经变得如此常见,以至于团队把它当作流程的一部分接受了。我不想再接受这种现状——于是我创建了 MockStation.io

What is MockStation?

你可以定义端点、请求方法、请求头以及响应负载。MockStation 会为你生成一个实时、可分享的 URL,返回的内容完全像真实 API。JSON、XML、GraphQL——全部开箱即用。

我最自豪的部分是动态测试数据引擎。它不会每次都返回同样的静态 JSON,而是根据你定义的数据规则——姓名、邮箱、ID、日期、数值范围——在每次 API 调用时返回全新的、逼真的数据。这就是使用假数据与使用接近生产环境数据进行测试的区别。

The Stack

  • Backend: FastAPI running on AWS Lambda (serverless, scales to zero when idle)
  • Frontend: Next.js on Vercel
  • Database: MySQL on RDS
  • Auth: JWT + Google OAuth

我选择 Lambda 作为后端,因为 MockStation 的流量模式不可预测——新用户可能会连续一小时疯狂调用端点,然后又沉寂。为一直在线的服务器付费在这个阶段并不划算。Lambda 能让成本在没有实际负载时接近零。

FastAPI 是自然的选择——它快速、开发体验极佳,自动生成的 OpenAPI 文档在开发过程中为我省了很多时间。

The Hardest Part

Routing

构建 mock 服务器路由是最棘手的部分。每个组织都有自己的命名空间,例如 api.mockstation.io/acme-corp/v1/orders 会路由到对应团队的 mock 端点。实现子域名提取、路径匹配以及通配符路由,并在不同环境下保持可靠,花费的时间比预期更长。

Dynamic Data Engine

支持 {{faker.name}}{{faker.email}}、随机范围以及条件响应,同时将响应时间控制在 100 ms 以下,需要精心的缓存设计。

What It Can Do Today

  • 创建带有自定义方法、请求头、查询参数和响应体的端点
  • 返回 JSON、XML、GraphQL、CSV 或 Excel 响应
  • 在每次请求时生成动态、逼真的测试数据
  • 立即与团队共享端点
  • 在简洁的仪表盘中监控使用情况和请求历史
  • 支持多项目和多团队

Where I Am Now

已上线。零用户。正在努力改变这一点。

产品已在 mockstation.io 上线,提供 30 天免费试用——无需信用卡。试用包括:

  • 每月 15,000 次 API 请求
  • 5 个项目
  • 每个项目 10 条端点
  • 支持 JSON、XML 和 GraphQL

付费套餐起价 $9/月,适用于需要更多资源的团队。

What’s Next

  • Product Hunt 上线(下周)
  • 端点调用的 Webhook 通知
  • 带差异视图的请求历史

如果你曾因后端未准备好而被卡住——欢迎尝试并告诉我你的感受。

mockstation.io — 欢迎在评论区留下反馈。

0 浏览
Back to Blog

相关文章

阅读更多 »