Vues js не видит запрос laravel
Я создал контроллер, модель, прописал маршрут в api.php, с помощью vue js я вызываю функцию в контроллере, но в консоль vue выводит это "Не удалось загрузить Fetch: POST (http://brainapi/api/devices/light/1)" Вот путь прописанный в api.php
Route::post('/devices/light/{val}', [DevicesController::class, 'light']);
Вот функция в контроллере
public function light($val)
{
$let = DB::table('devices')
->where('id', 1)
->update(['value' => $val]);
return $let;
}
И вот вызываемая функция во vue js
async light(val) {
this.loading = true;
let res = await fc("devices/light/"+val, "POST");
console.log(val);
console.log(res);
this.loading = false;
}
Скажите пожалуйста кто сталкивался с такой проблемой, все пути прописаны правильно и в postman этот запрос работает идеально
Функция fc()
async function fc(url, method, data, bearer = true, formData = false) {
let fetchData = {
method: method,
headers: {},
};
if (method != "GET" && !formData) {
fetchData['headers']['Content-Type'] = "application/json";
fetchData['body'] = JSON.stringify(data);
}
if (bearer)
fetchData['headers']['Authorization'] = "Bearer " + localStorage.token;
let res = await fetch("http://brainapi/api/" + url, fetchData);
let resJson = {};
if (res.headers.get('content-type') == 'application/json')
resJson = await res.json();
return {
status: res.status,
json: resJson,
};
}
Источник: Stack Overflow на русском