【发布时间】:2018-01-28 23:10:05
【问题描述】:
在我正在开发的平台上,我们在 Express.js 服务器上运行 React 前端,当在 localhost 上开发时,我们在设置的暂存环境(从 localhost)中调用我们的 API在云中拥有自己的域。
我们最近在暂存环境中的 API 网关级别 (Zuul) 设置了 cookie 身份验证。由于我们在开发时直接在 localhost 上运行我们的 React 应用程序(没有 Zuul 网关),因此该应用程序在没有首先进行身份验证的情况下调用暂存 API(没有 auth cookie)。这导致我们的 localhost 设置在对 API 的所有请求上都失败。我尝试了一些将令牌注入浏览器或强制它们在应用程序中设置的解决方案,但是 x-origin 请求(从 localhost 到 staging)仍然存在问题。
我开始质疑我们的前端开发设置。由于我们的 API 在我们的多个实时环境中设置的方式,我们很难在本地运行我们的 API 并连接到实时数据库和中间层服务。所以,我更愿意找到一种方法来使这些请求从 localhost 到 staging 工作。
我们有需要访问这些服务的服务器端和客户端请求 (ajax),我们正在使用 Axios 来处理这些请求。我在想可能有办法通过设置/etc/hosts 和代理请求来做到这一点,但我不确定如何做到这一点。
在有身份验证的微服务环境中开发时,是否有推荐的方法来解决前端应用程序的本地开发设置?在本地开发时,我们不应该尝试使用实时 API 吗?建议表示赞赏。
【问题讨论】:
标签: javascript authentication localhost frontend netflix-zuul