Хотите отобразить изображение, ответ от остальных API с Laravel в представлении ионной страницы.
Код работал при тестировании с почтальоном, но в ионной версии получает ошибку:
SyntaxError: Неожиданный токен � в JSON в позиции 0 в JSON.parse ...
с HTTP-статусом 200
Использование JWT
бэкэнд:
public function maPhotoApi(Request $request){
$user = auth()->user();
$residentModel = new Resident();
$resident = $residentModel->getResidentByIdUser($user->id);
if (is_dir(base_path('resources/resident/' . $resident->id_resident . '/')) && file_exists(base_path('resources/resident/' . $resident->id_resident . '/') . 'photo.jpg')) {
$img = file_get_contents(base_path('resources/resident/' . $resident->id_resident . '/') . 'photo.jpg');
return response($img)->header('Content-type', 'image/jpeg');
} else {
$img = file_get_contents(base_path('resources/resident/profil.png'));
return response($img)->header('Content-type', 'image/jpeg');
}
}
Frent-конец (ионный) в службе или поставщике
maPhoto(){
let httpOpt = {
headers: new HttpHeaders({
'Access-Control-Allow-Origin': '*',
'Authorization' : 'Bearer '+localStorage.getItem('token'),
'Content-type': 'image/jpeg',
})
};
return this.http.get(this.url + "maPhoto", httpOpt);
}
Компонент:
this.residentProvider.maPhoto().subscribe(data => {
console.log("--------------------");
console.log("photo => " , data);
this.maPhoto = data;
})