角度,无法更改引荐标头

问题描述 投票:1回答:3

我正在通过Angular的HttpClient访问第三方服务。在编写代码之前,我曾与Postman进行了一些测试,以确定是否可以访问此第三方服务。而且我注意到,为了获得第三方的成功响应,我必须将Referer设置为第三方的域名。因此,为了获得成功的响应,我应该告诉第三方该请求源自特定的网址。

问题是我无法从角度设置Referer标头。是否可以从角度设置引荐标题?如何实现修改引荐来源标头?我通过删除业务逻辑简化了代码。以下是我为实现这一目标而试图做的事情。

    var serviceUrl = "https://xxx.yyy.zzz";
    let httpOptions = {
      headers: new HttpHeaders({
        'Referer': 'https://xx.yyy.xx'
      })
    };
    let formData = new FormData();
    formData.append("x","z");
    formData.append("y","z");


    this.httpClient.post(serviceUrl,formData,httpOptions).subscribe(response => {
      console.log(response);
    });
javascript angular http
3个回答
1
投票

是否可以从角度设置引荐来源标头?

没有Referer is a forbidden header name(在从JS设置请求标头的上下文中。)>

如果可能,将是一个主要的安全问题。


0
投票

这是因为您的角度应用程序用户的浏览器不允许更改引荐标头。如果要将其更改为任意值,则需要访问其计算机上安装的浏览器插件或其他类型的应用程序。


0
投票

我无法通过在httpclient请求中指定标头来从角度更改引用标头。

© www.soinside.com 2019 - 2024. All rights reserved.