2016-11-07 20 views
2

私は次の問題があります:httpsからhttpへの角2 HTTPサービスの切り替え

PHPスクリプトからデータを取得するための私のサービスでは、ブラウザーまたは角がhttpsからhttpに切り替わります。私のサイトはHTSでHTTPS経由でロードされるので、ajaxリクエストは混合コンテンツとしてブロックされます。

私はAjaxのサービスのために次のコードを持っている:私は私のブラウザはAJAXリクエストが混在したコンテンツのためにブロックされたと私に語った私に教えてメインページhttps://example.com/Angular2Applicationから私のページを呼び出すと、要求を発射すると

import { Injectable, } from '@angular/core'; 
import { Http, Response } from '@angular/http'; 
import 'rxjs/add/operator/map'; 

@Injectable() 
export class AjaxService { 
    private apiUrl: string = "https://example.com/myapi/myscript"; 

    /** 
    * @param {Http} http HTTPService 
    */ 
    constructor(private http: Http) { } 

    /** 
    * @param {string} piece 
    */ 
    public getAllComponents(piece: string) { 
     console.debug("Get Components for Query: " + piece); 
     return this.http.get(this.apiUrl + "?compontent=" + piece).map((res: Response) => res.json()); 
    } 

    [...] 

} 

を彼はに接続しようとしましたhttp://example.com/myapi/myscript

答えて

0

ただスキームなしでURLを提供してください。例:

private apiUrl: string = "//example.com/myapi/myscript"; 

あなたのブラウザはあなたの現在のページのスキームと一致するので、混在したコンテンツの問題を避けることができます。

+0

を閉じました。もう一度試してみてください...それでもhttpスキームが必要です;( –

+0

おそらく何らかの種類のWebサーバーリダイレクトがありますか? – vidalsasoon

+0

これは本当に変です... –

0

これで機能します。理由はありませんが、大丈夫です。

は、私はすでに、この、それを試してみました

関連する問題