Saya menggunakan ekstensi Chrome tukang pos untuk menguji layanan web.
Ada tiga opsi yang tersedia untuk input data.
Saya kira itu raw
ini untuk mengirim JSON.
Apa perbedaan antara dua lainnya, form-data
dan x-www-form-urlencoded
?
forms
web-services
rest
postman
Rohan
sumber
sumber
binary
.Jawaban:
Ini adalah berbagai jenis konten formulir yang ditentukan oleh W3C. Jika Anda ingin mengirim data teks / ASCII sederhana, maka x-www-form-urlencoded akan berfungsi. Ini standarnya.
Tetapi jika Anda harus mengirim teks non-ASCII atau data biner besar, form-data adalah untuk itu.
Anda dapat menggunakan Raw jika Anda ingin mengirim teks biasa atau JSON atau jenis string lainnya. Seperti namanya, Postman mengirim data string mentah Anda karena tanpa modifikasi. Jenis data yang Anda kirim dapat diatur dengan menggunakan header tipe konten dari drop down.
Biner dapat digunakan ketika Anda ingin melampirkan data non-tekstual ke permintaan, misalnya file video / audio, gambar, atau file data biner lainnya.
Lihat tautan ini untuk bacaan lebih lanjut: Formulir dalam dokumen HTML
sumber
Ini menjelaskan lebih baik: Postman docs
MEMPERBARUI
Seperti yang ditunjukkan oleh VKK , spesifikasi WHATWG mengatakan urlencoded adalah tipe penyandian default untuk formulir.
sumber
Content-Type: application/json
header; dan data mentah dimasukkan sebagai json seperti{foo: bar}
denganContent-Type: application/json
header yang sama ?multipart / formulir-data
Catatan. Silakan berkonsultasi dengan RFC2388 untuk informasi tambahan tentang unggahan file, termasuk masalah kompatibilitas ke belakang, hubungan antara "multipart / formulir-data" dan jenis konten lainnya, masalah kinerja, dll.
Silakan baca lampiran untuk informasi tentang masalah keamanan untuk formulir.
Jenis konten "application / x-www-form-urlencoded" tidak efisien untuk mengirim sejumlah besar data biner atau teks yang mengandung karakter non-ASCII. Jenis konten "multipart / formulir-data" harus digunakan untuk mengirimkan formulir yang berisi file, data non-ASCII, dan data biner.
Jenis konten "multipart / formulir-data" mengikuti aturan semua aliran data MIME multipart seperti yang diuraikan dalam RFC2045 . Definisi "multipart / formulir-data" tersedia di registri [IANA].
Pesan "multipart / formulir-data" berisi serangkaian bagian, masing-masing mewakili kontrol yang berhasil. Bagian dikirim ke agen pemrosesan dalam urutan yang sama kontrol yang sesuai muncul dalam aliran dokumen. Batas bagian tidak boleh terjadi di salah satu data; bagaimana ini dilakukan terletak di luar ruang lingkup spesifikasi ini.
Seperti semua jenis multipart MIME, setiap bagian memiliki header "Tipe-Konten" opsional yang secara default adalah "teks / polos". Agen pengguna harus menyediakan tajuk "Tipe Konten", disertai dengan parameter "rangkaian karakter".
application / x-www-form-urlencoded
Ini adalah tipe konten default. Formulir yang dikirimkan dengan tipe konten ini harus dikodekan sebagai berikut:
Nama dan nilai kontrol diloloskan. Karakter spasi diganti dengan
+', and then reserved characters are escaped as described in [RFC1738], section 2.2: Non-alphanumeric characters are replaced by
% HH ', tanda persen dan dua digit heksadesimal yang mewakili kode ASCII karakter. Jeda baris direpresentasikan sebagai pasangan "CR LF" (yaitu,%0D%0A'). The control names/values are listed in the order they appear in the document. The name is separated from the value by
= 'dan pasangan nama / nilai dipisahkan satu sama lain oleh `&'.application/x-www-form-urlencoded
isi pesan HTTP yang dikirim ke server pada dasarnya adalah satu string kueri raksasa - pasangan nama / nilai dipisahkan oleh ampersand (&), dan nama dipisahkan dari nilai dengan simbol sama dengan (=). Contohnya adalah:The jenis konten "application / x-www-form-urlencoded" tidak efisien untuk mengirimkan sejumlah besar data biner atau teks yang berisi karakter non-ASCII. Jenis konten "multipart / formulir-data" harus digunakan untuk mengirimkan formulir yang berisi file, data non-ASCII, dan data biner.
sumber
Berikut adalah beberapa contoh tambahan untuk melihat teks mentah yang dikirimkan oleh tukang pos dalam permintaan. Anda dapat melihat ini dengan membuka konsol Postman:
formulir-data
Header
Tubuh
x-www-form-urlencoded
Header
Tubuh
Teks mentah / polos
Header
Tubuh
Johnny mentah
Header
Tubuh
sumber