虽然 Sunra 的 API 端点可以直接从客户端代码访问,但在这种环境中存储 API 密钥会带来重大安全风险。为了解决这个问题,开发者通常会创建自定义的服务器端 API,在将结果返回给客户端之前,安全地与像 Sunra 这样的第三方服务交互。虽然有效,但这种方法通常会分散团队对核心业务目标的关注。 为了简化这个过程,我们开发了支持代理模式的客户端库。此功能使您能够在前端代码中使用客户端库,同时在服务器端基础设施中安全地维护 API 密钥。

预构建的代理解决方案

我们为几个流行的框架提供预构建的代理解决方案:
  • Node.js with Next.js:一个可在任何 Next.js 应用程序中使用的 Next.js API 路由处理程序。它支持 PageApp 路由器。我们在生产中的所有应用程序中都使用它。
  • Node.js with Express:一个可在任何 Express 应用程序中使用的 Express 路由处理程序。您还可以实现自定义逻辑并与您自己的处理程序组合。
我们致力于根据社区反馈扩展我们的产品。如果您有具体的请求或建议,请联系我们分享您的想法。

设置代理

要集成代理功能,请通过在设置中指定 proxyUrl 来配置您的客户端:
import { sunra } from "@sunra/client";

sunra.config({
  proxyUrl: "/api/sunra/proxy",
});
此设置确保 API 调用通过您的服务器路由,增强安全性并简化开发。