最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

使用Next或Node转发第三方API响应的正确方法?

IT培训 admin 4浏览 0评论

使用Next或Node转发第三方API响应的正确方法?

转发第三方API响应(成功和失败)的正确方法是什么?

这是我的设置(出于安全原因,nextjs API被用作代理):

client -> nextjs api endpoint -> third party API -> nextjs api endpoint -> client

// pages/api/my-endpoint
export default async (req, res) => {
  try {
    const response = await axios.post('some-url', data);
    res.send(response);
  catch (e) {
    res.send(e)
  }

[执行上述操作时,我似乎会像身体一样丢失数据-我需要使用此数据才能成功完成请求和请求失败。与其删除正文,我不希望转发状态,正文,MIME标头等。

基于NextJs documentation,res对象的类型为NextApiResponse,扩展了http.ServerResponse

回答如下:

您是否尝试记录响应?我不建议这样做,因为响应不仅是正文,还有标头,Cookie等。因此,您需要确保不要仅使用send()或json()来转发响应,而应检查并设置适当的值。

我怀疑这是您要出问题的地方。

使用Next或Node转发第三方API响应的正确方法?

转发第三方API响应(成功和失败)的正确方法是什么?

这是我的设置(出于安全原因,nextjs API被用作代理):

client -> nextjs api endpoint -> third party API -> nextjs api endpoint -> client

// pages/api/my-endpoint
export default async (req, res) => {
  try {
    const response = await axios.post('some-url', data);
    res.send(response);
  catch (e) {
    res.send(e)
  }

[执行上述操作时,我似乎会像身体一样丢失数据-我需要使用此数据才能成功完成请求和请求失败。与其删除正文,我不希望转发状态,正文,MIME标头等。

基于NextJs documentation,res对象的类型为NextApiResponse,扩展了http.ServerResponse

回答如下:

您是否尝试记录响应?我不建议这样做,因为响应不仅是正文,还有标头,Cookie等。因此,您需要确保不要仅使用send()或json()来转发响应,而应检查并设置适当的值。

我怀疑这是您要出问题的地方。

发布评论

评论列表 (0)

  1. 暂无评论