2016-11-07 2 views
2

У меня есть следующая проблема:Угловое 2 HTTP Сервисный выключатель с HTTPS по схеме HTTP

В моей угловой службы для извлечения данных из PHP-скрипта в браузере или угловые переключатели с HTTPS на HTTP. Мой сайт загружается через HTTPS с помощью HTS, поэтому запрос ajax блокируется как смешанный контент.

Я следующий код для моего АЯКСА службы:

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()); 
    } 

    [...] 

} 

Когда я называю мою страницу с главной страницы https://example.com/Angular2Application и сгореть запрос моего браузер сказать мне запрос Аякса был заблокирован для смешанного содержимого и говорит мне пытался соединиться с пользователем http://example.com/myapi/myscript

ответ

0

Просто укажите адрес без схемы. Пример:

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

Ваш браузер будет соответствовать вашей текущей странице, чтобы избежать проблем со смешанным контентом.

+0

Я уже пробовал это и это. Попробовал еще раз, и да ... он все еще берет схему http: ( –

+0

есть, вероятно, какая-то переадресация веб-сервера тогда? – vidalsasoon

+0

Нет, это действительно странно ... –

0

Теперь это работает. Никакой план, почему, но нормально.

Closed

Смежные вопросы