API yang saya coba panggil mengharuskan saya melakukan POST tetapi dengan badan kosong. Saya baru menggunakan WCF Web API HttpClient dan saya tidak bisa menemukan kode tulis yang akan melakukan posting dengan badan kosong. Saya menemukan referensi ke beberapa metode HttpContent.CreateEmpty (), tapi saya rasa itu bukan untuk kode HttpClient API Web karena saya tidak bisa menemukan metode itu.
c#
httpclient
wcf-web-api
Ryan Rinaldi
sumber
sumber
Jawaban:
Gunakan
StringContent
atauObjectContent
yang berasal dariHttpContent
atau Anda dapat menggunakannull
sebagaiHttpContent
:var response = await client.PostAsync(requestUri, null);
sumber
HttpContent
kelas? Haruskah kita setidaknya memberikan sesuatu (bahkan string kosong) untuk membuat posting http?null
sebagaiHttpContent
, ini tidak akan mengirim isi dalam permintaan, misalnyavar response = await client.PostAsync(requestUri, null);
Lakukan ini sebelumnya, buat sederhana saja:
sumber
Telah menemukan bahwa:
Menambahkan null ke tubuh permintaan, yang gagal di WSO2. Digantikan dengan:
Dan berhasil.
sumber
null
konten dan melihat konten yang ditemukan diHttpRequestMessage
, saya tampaknya mendapatkan panjang nol byte.Untuk mengatasi masalah ini, gunakan contoh ini:
sumber
Saya pikir itu melakukannya secara otomatis jika metode web Anda tidak memiliki parameter atau semuanya cocok dengan template URL.
Misalnya deklarasi ini mengirimkan badan kosong:
sumber