Axios: دعم حذف الجسم

تم إنشاؤها على ١٣ مايو ٢٠١٧  ·  7تعليقات  ·  مصدر: axios/axios

ربما يكون هذا اختيار تصميم من قبل فريق Axios ولسبب وجيه ولكني أكتب كل ما عندي من POST / GET / PUTs مثل هذا:

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

ويتوقع خادمي أحيانًا بيانات داخل نص طلب الحذف (والذي قد لا يكون تقنيًا وفقًا للمواصفات ولكنه مع ذلك شائع) وفي هذه الحالة يجب أن أكتب الحذف في هذا النموذج:

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

وهو ما يعمل بشكل جيد ولكنني مجبر على استخدام الصيغة الثانية لأن axios.delete لا يدعم نص الطلب.

لذا أود أن أطلب أن يدعم axios.delete هيئة الطلب.

شكرا

التعليق الأكثر فائدة

axiox.delete يدعم نص الطلب. يقبل معلمتين: url واختياري config . يمكنك استخدام config.data لتعيين نص الاستجابة كما يلي:

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

post و put و patch اقبل 3 معلمات: url و data و config لذلك يمكنك يمكن استخدام المعلمة الثانية لتعيين جسم الاستجابة على النحو التالي:

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

أتمنى أن يساعد!

ال 7 كومينتر

غالبًا ما نستخدم data مع طلبات GET على الخادم ويتم ترجمتها إلى معلمات الاستعلام. يعد الافتقار إلى دعم البيانات في طرق معينة جانبًا سلبيًا كبيرًا بالنسبة للأكسيوس في آمالي في المزيد من الشفرة المتشابهة.

شكرا هنا وجدت هذه الإجابة

axiox.delete يدعم نص الطلب. يقبل معلمتين: url واختياري config . يمكنك استخدام config.data لتعيين نص الاستجابة كما يلي:

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

post و put و patch اقبل 3 معلمات: url و data و config لذلك يمكنك يمكن استخدام المعلمة الثانية لتعيين جسم الاستجابة على النحو التالي:

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' بشكل خاص.

الرجاء إضافة هذا التعليق إلى المستندات

إنه موجود في المستندات https://github.com/axios/axios#request -method-aliases

ما الفرق بين هذين الاثنين؟

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

عملت [params] في جانبي

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

emaincourt picture emaincourt  ·  3تعليقات

Baoyx007 picture Baoyx007  ·  3تعليقات

shaosh picture shaosh  ·  3تعليقات

achingbrain picture achingbrain  ·  3تعليقات

ghprod picture ghprod  ·  3تعليقات