バージョン情報
- Laravel 5.8
- vue.js 2.6
状況
LaravelとVue.jsでwebアプリを開発しています。
その中でWordPressの記事を取得する必要がありaxiosでWP REST APIにアクセスしたのですが下記のエラーが出ています。
Access to XMLHttpRequest at 'https://取得元のドメイン/wp-json/wp/v2/posts/' from origin 'http://開発中のドメイン' has been blocked by CORS policy: Request header field x-xsrf-token is not allowed by Access-Control-Allow-Headers in preflight response.
CORSのエラーでそこの設定をすれば直るかと思ったのですがイマイチCORSの理解も薄く
エラーの解消が出来ません。
わかる方何卒ご教授いただければ幸いです。
試したこと
php artisan make:middleware Cors
app/Http/kernel.php
php
1protected $middleware = [ 2 \App\Http\Middleware\Cors::class //これを追加 3]; 4protected $routeMiddleware = [ 5 'cors' => \App\Http\Middleware\Cors::class,//これを追加 6];
app/Http/Middleware/Cors.php
php
1class Cors 2{ 3 /** 4 * Handle an incoming request. 5 * 6 * @param \Illuminate\Http\Request $request 7 * @param \Closure $next 8 * @return mixed 9 */ 10 public function handle($request, Closure $next) 11 { 12 return $next($request) 13 ->header('Access-Control-Allow-Origin', '*') 14 ->header('Access-Control-Allow-Methods', '*') 15 ->header('Access-Control-Allow-Headers', 'Content-Type,Authorization, X-Requested-With,X-CSRF-Token,X-XSRF-TOKEN'); 16 } 17}
routes/api.php
php
1Route::middleware(['cors'])->group(function () { 2 Route::get('/', function () { 3 return response()->json(); 4 }); 5});
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。