首页 > 解决方案 > Hapi js 作为代理服务器来处理 api 调用

问题描述

有人可以发布一个如何使用Hapi js作为代理服务器进行api调用的示例。假设我向www.example.com发送请求以获取响应。目前我正在直接从我的角度应用程序向 www.example.com进行api调用。相反, hapi js应该充当代理服务器,获取请求并将请求发送到 www.example.com,取回响应并将其提供给我的 Angular 应用程序。

标签: angularhapi

解决方案


const PROXY_CONFIG = {
  "*": {
    "target": "http://localhost:9000", // your server address
    "secure": false,
    "changeOrigin": true,
    "logLevel": "debug",
    "bypass": function (req, res, proxyOptions) {
      /* Fix for angular route refresh causes Not Found Error. For a browser requests, we want to serve a HTML page, but for an API request we want to proxy it.*/

      if (req.headers.accept && req.headers.accept.indexOf("html") !== -1) {
        console.log("Skipping proxy for browser request header ==> " + req.headers.accept);
        return "/index.html";
      }
    }
  }
}

module.exports = PROXY_CONFIG;

你必须从角度处理这样的连接服务器


推荐阅读