LoginSignup
2
1

More than 3 years have passed since last update.

Laravelでaxiosのリクエストを受け取る際、$request->ajax()がfalseになる時の対応

Posted at

TL;DR

headerにX-Requested-With: XMLHttpRequestを付けよう

背景

Laravel 5.4
@nuxtjs/axios 5.4.1

axiosでGETリクエストをした際、サーバー側で以下のような処理があり、JSONを返してほしいのにHTMLが返ってきて?となった

if ($request->ajax()) {
    // JSONを返す処理
} else {
    // HTMLを返す処理
}

よくよく調べてみたら、↓の記事にもあるようにヘッダーのX-Requested-Withで判断しているらしい
https://qiita.com/harunbu/items/8b746e589b7689ce0eb7

axios.get("http://hoge/getContents", {
    headers: { "X-Requested-With": "XMLHttpRequest" },
    data: {}
})

で無事解決

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1