Angular 2 HTTPS请求

时间:2016-09-27 00:45:03

标签: angular angular2-services angular2-http

如何从角度2配置和发出https请求?找不到任何资源。可以请有人在这里指导我吗?谢谢。

4 个答案:

答案 0 :(得分:3)

以防其他人试图这样做

您应该像普通的http呼叫一样进行https呼叫,但是您必须确保您的浏览器信任后端API使用的证书。您的浏览器可以连接到此API。

注意:

它可能会在YARC或REST客户端中出现超时错误,因此您应该直接在浏览器中尝试一个简单的GET请求(即:导航到https get请求)

例如,如果我们有这个API

  

https://testDomain.com:7001/getCountries

尝试通过在浏览器中导航来获取此网址的请求,如果您在本地或在UAT中进行测试,您的证书可能不会在浏览器中自动完全受信任,因此您必须告诉Chrome您信任这个网站&去那里(进入这个网站)

如果您可以在浏览器中成功调用此get请求:

然后,您可以按照以下资源调用https apis,就像调用普通的http(具有https&端口号的完整正确的URL)一样:

1- Angular httpClient guide

2-您也可以查看this excellent guide on making http calls in Angular 5

答案 1 :(得分:2)

这个答案有点晚了,但对于刚刚搜索的人来说,这可能会有所帮助。

使用最新版本的角度,您可以使用http interceptor执行此操作,如angular docs

中所示

答案 2 :(得分:1)

简短回答,将其添加到您的page.ts:

之上
$ test2_directory/test_file2.py

def test_use_object_from_file1():
    # reuse the object 

然后在你的页面类中(在@component下面),在你的构造函数中,添加' public http:Http'像这样:

import {Http} from '@angular/http';

然后在你的构造函数之外(在你的页面类中),创建像这样的http请求函数:

constructor(public http:Http, public navCtrl: NavController, public navParams: NavParams) {}

然后在页面类的任何位置使用它,如下所示:

httprequest(url) {
        this.http.request(url).map(res => JSON.parse(res['_body']));
        }

*如果JSON.parse不是JSON数据,则不需要它。只需res [' _body']即可获取数据。

答案 3 :(得分:1)

这很简单,试试这个: -

import { Http, Headers } from '@angular/Http';

export class service{
  constructor(private http:Http){
   let headers = new Headers({ 'Content-Type': 'application/json' });
    this.http.post(requestUrl,headers,body)
             .map(val => val.json())
             .subscribe(data => console.log(data))
}
}