При доступе к 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 на свою локальную систему.
Все предложения приветствуются.