web-dev-qa-db-ja.com

Angular 2 HTTPS要求

angular 2?からhttpsリクエストを設定および作成する方法はありません。リソースを見つけることができませんでした。

7
Gaurav Ram

他の誰かがこれをしようとしている場合に備えて

通常のhttp呼び出しと同様にhttps呼び出しを行う必要がありますが、ブラウザがバックエンドAPIによって使用される証明書を信頼し、ブラウザがこのAPIに接続できることを確認する必要があります。

注意:

YARCまたはRESTクライアントでタイムアウトエラーが発生する可能性があるので、ブラウザで単純なGETリクエストを直接試行する必要があります(つまり、https getリクエストに移動します)

たとえば、このAPIがある場合

https://testDomain.com:7001/getCountries

ローカルまたはUATでテストしている場合、ブラウザーでナビゲートしてこのURLへのgetリクエストを作成してみてください。ブラウザーで証明書が完全に信頼されていない可能性があるため、chromeこのWebサイトを信頼してそこにアクセスする(このWebサイトに進む)

ブラウザでこのgetリクエストを正常に呼び出すことができる場合:

次に、以下のリソースに従って、通常のhttp(httpsとポート番号を持つ完全な正しいURL)を呼び出すのと同じように、https apiを呼び出すことができます。

1- Angular httpClientガイド

2-また、チェックアウトすることもできます http呼び出しを行う際のこの優れたガイドAngular 5

6
Ahmed Elkoussy

この答えは少し遅れていますが、検索するだけの人にとっては役に立つかもしれません。

angularの最新バージョンでは、http interceptorangular docs に示されているようにこれを行う

2
Ivan Ruski

短い答え、これをあなたのpage.tsの上に追加してください:

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

次に、ページクラス(@componentの下)のコンストラクターで、次のように 'public http:Http'を追加します。

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

次に、コンストラクタの外部(ページクラス内)で、次のようなhttp要求関数を作成します。

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

次に、次のようにページクラス内の任意の場所で使用します。

this.httprequest('http://your_request_url').subscribe(yourdata=>{
console.log('you have your data: '+JSON.stringify(yourdata));
});

* JSONデータでない場合、JSON.parseは必要ありません。 res ['_ body']はデータを取得する場所です。

2
Baksa Gimm

これはとても簡単です:-

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))
}
} 
1
Sandip Jaiswar

パラメータに渡すリクエストURLがhttpsであることを確認してください。

フルパスを使用している場合は簡単です。https、I.Eを指定できます。 ' https://request.url.com '。

'/ api/some/data'などのアプリケーションへの相対パスの場合、アプリは安全にホストされ、https接続を使用してアクセスする必要があります。

1
Andrew Stalker