Axios: 削除本文のサポート

作成日 2017年05月13日  ·  7コメント  ·  ソース: axios/axios

これはおそらくaxiosチームによる設計上の選択であり、正当な理由がありますが、私はすべてのPOST / GET / PUTを次のように記述しています。

const res = await axios.post(url, { 
  data: {
    ...
  }
})

そして、私のサーバーは、DELETEリクエスト本文内のデータを期待することがあります(技術的には仕様に準拠していない可能性がありますが、それでも一般的です)。その場合、DELETEを次の形式で記述する必要があります。

      const res = await axios({
        method: 'DELETE',
        url: 'url',
        data: {
          ...
        }
      })

これは正常に機能しますが、 axios.deleteはリクエスト本文をサポートしていないため、2番目の構文を使用する必要があります。

そこで、 axios.deleteがリクエスト本文をサポートすることをリクエストしたいと思います。

ありがとう

最も参考になるコメント

axiox.deleteはリクエスト本文をサポートします。 urlとオプションのconfigの2つのパラメーターを受け入れます。 config.dataを使用して、応答本文を次のように設定できます。

axios.delete(url, { data: { foo: "bar" } });

postput 、およびpatchは、 urldata 、およびconfigの3つのパラメーターを受け入れるため、 2番目のパラメーターを使用して、次のように応答本文を設定できます。

axios.put(url, { foo: "bar" });

それが役に立てば幸い!

全てのコメント7件

サーバー上のGETリクエストでdataを使用することがよくあり、それらはクエリパラメータに変換されます。 特定のメソッドでのデータサポートの欠如は、より同形のコードを望んでいるaxiosにとって大きな欠点です。

ありがとう、ここで私はこの答えを見つけました

axiox.deleteはリクエスト本文をサポートします。 urlとオプションのconfigの2つのパラメーターを受け入れます。 config.dataを使用して、応答本文を次のように設定できます。

axios.delete(url, { data: { foo: "bar" } });

postput 、およびpatchは、 urldata 、およびconfigの3つのパラメーターを受け入れるため、 2番目のパラメーターを使用して、次のように応答本文を設定できます。

axios.put(url, { foo: "bar" });

それが役に立てば幸い!

READMEは、理解を難しくしていると思います。

  // `data` is the data to be sent as the request body
  // Only applicable for request methods 'PUT', 'POST', and 'PATCH'
  // When no `transformRequest` is set, must be of one of the following types:
  // - string, plain object, ArrayBuffer, ArrayBufferView, URLSearchParams
  // - Browser only: FormData, File, Blob
  // - Node only: Stream, Buffer
  data: {
    firstName: 'Fred'
  },

この部分:特に// Only applicable for request methods 'PUT', 'POST', and 'PATCH'

このコメントをドキュメントに追加してください

これら2つの違いは何ですか?

this.$axios.$delete(queryData.url,
        {
          params: { id: String(queryData.id) }
        })
this.$axios.$delete(queryData.url,
        {
          body: { id: String(queryData.id) }
        })

[params]私の側で働いた

このページは役に立ちましたか?
0 / 5 - 0 評価