Я пытаюсь научиться создавать базовый API для приложения vue.js с использованием установленных Axors и Laravel.
Я могу получить API для выполнения большинства вызовов, таких как: вход в систему, регистрация, доступ к незащищенным областям, но когда я пытаюсь получить доступ к защищенной области, в консоли браузера возвращается эта ошибка
Не удалось загрузить http://127.0.0.1:8000/api/closed: Ответ на предпечатную проверку
запрос не проходит проверку контроля доступа: нет
Заголовок «Access-Control-Allow-Origin» присутствует в запрошенном
ресурс. Происхождение 'http://localhost:8080' поэтому не допускается
доступ.
Вот мой Vue JS funciton
userArea () {
const HTTP = axios.create({
baseURL: `http://127.0.0.1:8000/api/`,
headers: {
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Credentials": true,
Authorization: 'Bearer ' + this.token
}
})
HTTP.get('closed')
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
}
laravel cors.php
namespace App\Http\Middleware;
use Closure;
class Cors
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
return $next($request)
->header('Access-Control-Allow-Origin', '*')
->header('Access-Control-Allow-Methods', 'GET, POST, PATCH, PUT, DELETE, OPTIONS')
->header('Access-Control-Allow-Headers', 'Origin, Content-Type, X-Auth-Token, Authorization, X-Requested-With');
}
}
Edit:
Использование почтальона для эмуляции запроса работает нормально
пример почтальона