Angular 6 HttpClient и php backend CORS Issue - PullRequest
0 голосов
/ 07 марта 2019

При доступе к php-файлу с углового (6) интерфейса я всегда сталкиваюсь с проблемой cors и corb.

Ниже приведены коды: -

1 - угловой сервисный файл

httpOptions = {
headers: new HttpHeaders(
  { 'Content-Type': 'application/json' }
)

}

public getStudentData() {    
return this.http.get(this.url + '/getStudents.php', this.httpOptions);

}

2 - это компонент приложения, где вызывается услуга -

ngOnInit() {

this.studentService.getStudentData().subscribe(
  (data) => {
    console.log("data: " + JSON.stringify(data));
    this.students = data;
    console.log("students record len: " + this.students.length);
  },
  (error) => console.log(error)
);

}

3 - это бэкэнд-код php для получения данных

    <?php 
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: PUT, GET, POST");
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");

include "db.php";

$sql = "SELECT * FROM student";
$result = $conn->query($sql);

$data = array();
if ($result->num_rows > 0) {

    foreach($result as $res){
        $data[] = $res;
    }

} 
$conn->close();
$data = json_encode($data);
echo $data;
//return $data;
?>

Сообщение об ошибке - это сообщения об ошибке

1- Доступ к XMLHttpRequest в 'http://scbo.byethost3.com/studentcrud//getStudents.php' от источника' http://localhost:4200' был заблокирован политикой CORS: Ответ на предпечатный запрос не проходит проверку контроля доступа: Нет 'Access-Control- Заголовок Allow-Origin 'присутствует в запрашиваемом ресурсе.

* * 2- тысяча двадцать восемь сообщение: «Http ошибка ответа (неизвестный URL): 0 неизвестная ошибка» имя: "HttpErrorResponse" хорошо: ложь статус: 0 statusText: «Неизвестная ошибка»

3- zone.js: 3243 Блокировка перекрестного источника (CORB) заблокировала ответ перекрестного источника http://scbo.byethost3.com/studentcrud//getStudents.php с типом MIME text / html. См. https://www.chromestatus.com/feature/5629709824032768 для получения более подробной информации.

Примечание. Этот параметр работает для меня на локальном хосте, если вместо этого я изменяю URL на свою локальную систему.

Все предложения приветствуются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...