内容提要
Dev Proxy v0.15发布,新增功能包括模拟使用Microsoft Entra保护的CRUD API,模拟OAuth流程,改进监控URL,添加多个相同插件实例,更灵活的模拟限流,改进CORS支持,选择如何启动Dev Proxy,使用自定义命令扩展Dev Proxy,以及获取新的beta版本通知。此版本还包括错误修复和改进。
延伸解读
模拟受保护API的实用价值
对于构建企业应用的开发者,后端API通常受Microsoft Entra保护,在开发早期可能无法访问。Dev Proxy v0.15的CrudApiPlugin现在支持模拟这类受保护API,允许开发者指定要验证的令牌方面(如受众、颁发者、权限或令牌生存期),甚至可以选择验证令牌签名以确保使用真实令牌。这有助于在不搭建生产资源的情况下进行开发和测试。
OAuth流程模拟简化身份验证开发
许多基于Microsoft云的应用使用Microsoft Entra进行保护,访问前需要登录并获取访问令牌。新引入的EntraMockResponsePlugin可以模拟OAuth流程,在检测到OAuth流程后,插件会更新授权码和模拟访问令牌,使其被Microsoft身份库接受。这为开发者提供了便利,无需配置真实身份验证即可测试应用。
灵活配置提升开发体验
v0.15版本增加了多项配置选项:通过命令行指定要监视的URL(-u或--urls-to-watch),无需修改预设;支持仅监视特定端口上的URL,便于处理本地多个API;允许添加多个相同插件实例,并改进了命令行选项暴露方式以避免冲突;模拟限流时支持配置重试后延迟值;改进了CORS支持,使跨域请求的限流信息得以暴露。这些改进让开发者能更精细地控制代理行为。
启动选项与扩展性增强
新版本允许通过--as-system-proxy false和--install-cert false控制Dev Proxy是否注册为系统代理和安装SSL证书,为Docker容器等场景提供更大灵活性。此外,插件现在可以添加自定义命令,扩展Dev Proxy功能,而不仅限于监视请求。从该版本起,用户还可以订阅新beta版本通知,每次启动时检查更新。
Q&A
Dev Proxy v0.15 如何模拟受 Microsoft Entra 保护的 CRUD API?
通过 CrudApiPlugin 插件,可以模拟受 Microsoft Entra 保护的 CRUD API。在定义 CRUD API 时,可以选择验证访问令牌的受众、颁发者、权限或令牌生存期等属性,也可以选择验证令牌签名以确保应用使用真实令牌。
Dev Proxy v0.15 新增的 EntraMockResponsePlugin 有什么作用?
EntraMockResponsePlugin 用于模拟 OAuth 流程。在检测到 OAuth 流程后,该插件会更新授权码和模拟的访问令牌,使其被 Microsoft 身份库接受,从而方便访问 Microsoft 云上的应用。
如何从命令行指定 Dev Proxy 要监控的 URL?
可以使用 -u 或 --urls-to-watch 选项从命令行指定要监控的 URL,而无需修改预设文件。此外,还支持仅监控特定端口上的 URL,提供更精细的控制。
Dev Proxy v0.15 在模拟限流方面有哪些改进?
扩展了 GenericRandomErrorPlugin 和 GraphRandomErrorPlugin,可以配置限流响应中的 retry-after 值,从而模拟不同的延迟场景,观察对应用的影响。
Dev Proxy v0.15 如何改进对 CORS 的支持?
更新了 RateLimitingPlugin 和 RetryAfterPlugin,为跨域请求暴露限流信息,使应用能够正确处理限流。
Dev Proxy v0.15 提供了哪些启动选项?
新增两个选项:使用 --as-system-proxy false 可以不将 Dev Proxy 注册为系统代理;使用 --install-cert false 可以不安装 SSL 证书。这为在 Docker 容器等不同场景中使用提供了更多灵活性。