首页 > 解决方案 > 使用 Angular HttpClient 通过代理发送请求

问题描述

我正在尝试使用带有 Angular 7 HttpClient 的代理向外部 API 发送请求,但我似乎找不到代理选项。我正在寻找的是支持代理的 Node.js 的请求承诺 HTTP 客户端。

var request = require('request-promise').defaults({
    proxy:'http://username:password@host:port',
    strictSSL :false
});

使用 Angular 的 HttpClient 可以实现这样的事情吗?

标签: angularhttp-proxyangular-httpclient

解决方案


这是一个很好的文件参考这个

检查这个也代理到后端

示例 https 代理配置

{
  "/angular": {
     "target":  {
       "host": "github.com",
       "protocol": "https:",
       "port": 443
     },
     "secure": false,
     "changeOrigin": true,
     "logLevel": "info"
  }
}

官方方式如下

编辑你的“开始”package.json看下面

"start": "ng serve --proxy-config proxy.conf.json",

在项目的根目录中创建一个名为 proxy.conf.json 的新文件,并在其中定义您的代理,如下所示

{
  "/api": {
    "target": "http://api.yourdomai.com",
    "secure": false
  }
}

重要的是你使用npm start而不是ng serve


推荐阅读