Fungsi WsRequestReply (webservices.h)
Digunakan untuk mengirim pesan permintaan dan menerima pesan balasan yang berkorelasi.
Sintaks
HRESULT WsRequestReply(
[in] WS_CHANNEL *channel,
[in] WS_MESSAGE *requestMessage,
[in] const WS_MESSAGE_DESCRIPTION *requestMessageDescription,
[in] WS_WRITE_OPTION writeOption,
const void *requestBodyValue,
[in] ULONG requestBodyValueSize,
[in] WS_MESSAGE *replyMessage,
[in] const WS_MESSAGE_DESCRIPTION *replyMessageDescription,
[in] WS_READ_OPTION readOption,
[in, optional] WS_HEAP *heap,
void *value,
[in] ULONG valueSize,
[in, optional] const WS_ASYNC_CONTEXT *asyncContext,
[in, optional] WS_ERROR *error
);
Parameter
[in] channel
Saluran untuk melakukan operasi balasan permintaan.
[in] requestMessage
Objek pesan yang digunakan untuk mengirim permintaan.
Objek pesan harus dalam WS_MESSAGE_STATE_EMPTY atau WS_MESSAGE_STATE_INITIALIZED.
[in] requestMessageDescription
Bidang tindakan WS_MESSAGE_DESCRIPTION digunakan sebagai header tindakan untuk pesan permintaan. Bidang ini mungkin NULL jika tidak ada tindakan yang diperlukan.
Bidang bodyElementDescription dari WS_MESSAGE_DESCRIPTION digunakan untuk menserialisasikan isi pesan permintaan. Bidang ini mungkin NULL jika tidak ada elemen isi yang diinginkan. Lihat WsWriteBody untuk informasi tentang bagaimana tubuh diserialisasikan sesuai dengan bodyElementDescription.
[in] writeOption
Apakah elemen isi diperlukan, dan bagaimana nilai dialokasikan. Lihat WS_WRITE_OPTION untuk informasi selengkapnya.
requestBodyValue
Penunjuk ke nilai untuk diserialisasikan dalam isi objek permintaan.
[in] requestBodyValueSize
Ukuran nilai permintaan yang diserialisasikan, dalam byte.
[in] replyMessage
Objek pesan yang digunakan untuk menerima balasan.
Objek pesan harus dalam WS_MESSAGE_STATE_EMPTY.
[in] replyMessageDescription
Bidang tindakan WS_MESSAGE_DESCRIPTION digunakan untuk memverifikasi header tindakan dari pesan balasan yang diterima. Bidang ini mungkin NULL jika tidak ada tindakan yang diperlukan. Jika NULL, header tindakan dari pesan yang diterima diabaikan jika ada.
Bidang bodyElementDescription dari WS_MESSAGE_DESCRIPTION digunakan untuk mendeserialisasi isi pesan balasan. Bidang ini mungkin NULL jika tidak ada elemen isi yang diinginkan. Lihat WsReadBody untuk informasi tentang bagaimana tubuh dideserialisasi sesuai dengan bodyElementDescription.
[in] readOption
Apakah elemen isi balasan diperlukan, dan cara mengalokasikan nilai. Untuk informasi selengkapnya, lihat WS_READ_OPTION dan WsReadBody.
[in, optional] heap
Timbunan yang digunakan untuk mengalokasikan nilai isi balasan yang dideserialisasi. Jika timbunan tidak diperlukan untuk jenis yang diberikan, maka parameter ini bisa NULL.
value
Tempat menyimpan nilai isi yang dideserialisasi.
Interpretasi parameter ini tergantung pada WS_READ_OPTION.
Jika bodyElementDescription dari WS_MESSAGE_DESCRIPTION balasan adalah NULL, maka parameter ini tidak disentuh. Dalam hal ini, parameter tidak perlu ditentukan.
[in] valueSize
Interpretasi parameter ini tergantung pada WS_READ_OPTION.
[in, optional] asyncContext
Informasi tentang cara memanggil fungsi secara asinkron, atau NULL jika memanggil secara sinkron.
[in, optional] error
Menentukan di mana informasi kesalahan tambahan harus disimpan jika fungsi gagal.
Mengembalikan nilai
Fungsi ini dapat mengembalikan salah satu nilai ini.
Menampilkan kode | Deskripsi |
---|---|
|
Pesan balasan berisi kesalahan. Kesalahan dapat diekstrak dari WS_ERROR menggunakan WsGetErrorProperty. |
|
Operasi asinkron masih tertunda. |
|
Operasi dibatalkan. |
|
Operasi tidak diperbolehkan karena status objek saat ini. |
|
Titik akhir jarak jauh tidak ada atau tidak dapat ditemukan. |
|
Akses ditolak oleh titik akhir jarak jauh. |
|
Koneksi dengan titik akhir jarak jauh dihentikan. |
|
Titik akhir jarak jauh tidak dapat memproses permintaan. |
|
Titik akhir jarak jauh saat ini tidak dalam layanan di lokasi ini. |
|
Titik akhir jarak jauh tidak dapat memproses permintaan karena kelebihan beban. |
|
Titik akhir jarak jauh tidak dapat dijangkau. |
|
URL alamat titik akhir tidak valid. |
|
Data input tidak dalam format yang diharapkan atau tidak memiliki nilai yang diharapkan. |
|
Operasi tidak selesai dalam waktu yang dialokasikan. |
|
Akses ditolak oleh server proksi HTTP. |
|
Server proksi HTTP tidak dapat memproses permintaan. |
|
Kuota terlampaui. |
|
Verifikasi keamanan tidak berhasil untuk data yang diterima. |
|
Operasi keamanan gagal dalam kerangka kerja Windows Web Services. |
|
Token keamanan ditolak oleh server karena telah kedaluwarsa. |
|
Server proksi HTTP memerlukan skema autentikasi HTTP 'dasar'. |
|
Server proksi HTTP memerlukan skema autentikasi HTTP 'digest'. |
|
Server proksi HTTP memerlukan skema autentikasi HTTP 'negosiasi'. |
|
Server proksi HTTP memerlukan skema autentikasi HTTP 'NTLM'. |
|
Titik akhir jarak jauh memerlukan skema autentikasi HTTP 'dasar'. |
|
Titik akhir jarak jauh memerlukan skema autentikasi HTTP 'digest'. |
|
Titik akhir jarak jauh memerlukan skema autentikasi HTTP 'negosiasi'. |
|
Titik akhir jarak jauh memerlukan skema autentikasi HTTP 'NTLM'. |
|
Sertifikat yang diperlukan tidak dalam periode validitasnya ketika memverifikasi terhadap jam sistem saat ini atau tanda waktu dalam file yang ditandatangani. |
|
Nama CN sertifikat tidak cocok dengan nilai yang diteruskan. |
|
Rantai sertifikat diproses, tetapi diakhiri dalam sertifikat akar yang tidak dipercaya oleh penyedia kepercayaan. |
|
Sertifikat tidak valid untuk penggunaan yang diminta. |
|
Fungsi pencabutan tidak dapat memeriksa pencabutan karena server pencabutan sedang offline. |
|
Kehabisan memori. |
|
Satu atau beberapa argumen tidak valid. |
|
Fungsi ini dapat mengembalikan kesalahan lain yang tidak tercantum di atas. |
Keterangan
Pesan berkorelasi sesuai dengan WS_ADDRESSING_VERSION. Lihat Gambaran Umum Lapisan Saluran untuk informasi selengkapnya tentang menghubungkan pesan balasan permintaan.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 7 [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | webservices.h |
Pustaka | WebServices.lib |
DLL | WebServices.dll |
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk