Indeks
HttpBody(pesan)
HttpBody
Pesan yang merepresentasikan bagian isi HTTP arbitrer. Pesan ini hanya boleh digunakan untuk format payload yang tidak dapat direpresentasikan sebagai JSON, seperti biner mentah atau halaman HTML.
Pesan ini dapat digunakan baik dalam metode API streaming maupun non-streaming pada permintaan dan juga pada respons.
Pesan ini dapat digunakan sebagai kolom permintaan tingkat atas, yang praktis jika Anda ingin mengekstrak parameter dari template HTTP atau URL ke dalam kolom permintaan dan juga menginginkan akses ke isi HTTP mentah.
Contoh tanpa metode streaming:
message GetResourceRequest {
// A unique request id.
string request_id = 1;
// The raw HTTP body is bound to this field.
google.api.HttpBody http_body = 2;
}
service ResourceService {
rpc GetResource(GetResourceRequest)
returns (google.api.HttpBody);
rpc UpdateResource(google.api.HttpBody)
returns (google.protobuf.Empty);
}
Contoh dengan metode streaming:
service CaldavService {
rpc GetCalendar(stream google.api.HttpBody)
returns (stream google.api.HttpBody);
rpc UpdateCalendar(stream google.api.HttpBody)
returns (stream google.api.HttpBody);
}
Penggunaan jenis ini hanya mengubah cara penanganan isi permintaan dan respons. Semua fitur lainnya tetap berfungsi seperti biasa.
| Kolom | |
|---|---|
content_ |
Nilai header HTTP Content-Type yang menentukan jenis konten pada bagian isi. |
data |
Isi permintaan atau respons HTTP sebagai biner mentah. |
extensions[] |
Metadata respons khusus aplikasi. Harus ditetapkan dalam respons pertama untuk API streaming. |