IWinHttpRequest::Kirim metode
Metode Kirim mengirimkan permintaan HTTP ke server HTTP.
Sintaks
HRESULT Send(
[in, optional] VARIANT Body
);
Parameter
-
Isi [in, opsional]
-
Data yang akan dikirim ke server.
Mengembalikan nilai
Nilai yang dikembalikan S_OK pada keberhasilan atau nilai kesalahan jika tidak.
Keterangan
Permintaan yang akan dikirim ditentukan dalam panggilan sebelumnya ke metode Buka . Aplikasi panggilan dapat menyediakan data untuk dikirim ke server melalui parameter Isi . Jika kata kerja HTTP dari objek Buka adalah "GET", metode ini mengirimkan permintaan tanpa Isi, bahkan jika disediakan oleh aplikasi panggilan.
Catatan
Untuk Windows XP dan Windows 2000, lihat bagian Persyaratan Run-Time di halaman mulai WinHttp.
Contoh
Contoh berikut menunjukkan cara membuka koneksi HTTP, mengirim permintaan HTTP, dan membaca teks respons.
#include <windows.h>
#include <stdio.h>
#include <objbase.h>
#include "httprequest.h"
#pragma comment(lib, "ole32.lib")
#pragma comment(lib, "oleaut32.lib")
// IID for IWinHttpRequest.
const IID IID_IWinHttpRequest =
{
0x06f29373,
0x5c5a,
0x4b54,
{0xb0, 0x25, 0x6e, 0xf1, 0xbf, 0x8a, 0xbf, 0x0e}
};
int main()
{
// variable for return value
HRESULT hr;
// initialize COM
hr = CoInitialize( NULL );
IWinHttpRequest * pIWinHttpRequest = NULL;
BSTR bstrResponse = NULL;
VARIANT varFalse;
VARIANT varEmpty;
CLSID clsid;
VariantInit(&varFalse);
V_VT(&varFalse) = VT_BOOL;
V_BOOL(&varFalse) = VARIANT_FALSE;
VariantInit(&varEmpty);
V_VT(&varEmpty) = VT_ERROR;
hr = CLSIDFromProgID(L"WinHttp.WinHttpRequest.5.1", &clsid);
if (SUCCEEDED(hr))
{
hr = CoCreateInstance(clsid, NULL,
CLSCTX_INPROC_SERVER,
IID_IWinHttpRequest,
(void **)&pIWinHttpRequest);
}
if (SUCCEEDED(hr))
{ // Open WinHttpRequest.
BSTR bstrMethod = SysAllocString(L"GET");
BSTR bstrUrl = SysAllocString(L"https://microsoft.com");
hr = pIWinHttpRequest->Open(bstrMethod, bstrUrl, varFalse);
SysFreeString(bstrMethod);
SysFreeString(bstrUrl);
}
if (SUCCEEDED(hr))
{ // Send Request.
hr = pIWinHttpRequest->Send(varEmpty);
}
if (SUCCEEDED(hr))
{ // Get Response text.
hr = pIWinHttpRequest->get_ResponseText(&bstrResponse);
}
// Print response to console.
wprintf(L"%.256s",bstrResponse);
// Release memory.
if (pIWinHttpRequest)
pIWinHttpRequest->Release();
if (bstrResponse)
SysFreeString(bstrResponse);
CoUninitialize();
return 0;
}
Contoh skrip berikut menunjukkan cara membuka koneksi HTTP, mengirim permintaan HTTP, dan membaca teks respons.
// Instantiate a WinHttpRequest object.
var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
// Initialize an HTTP request.
WinHttpReq.Open("GET", "https://www.microsoft.com", false);
// Send the HTTP request.
WinHttpReq.Send();
// Display the response text.
WScript.Echo( WinHttpReq.ResponseText);
Contoh pembuatan skrip berikut menunjukkan cara memposting data ke server HTTP.
// Instantiate a WinHttpRequest object.
var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
// Initialize an HTTP request.
WinHttpReq.Open("PUT", "https://postserver/newdoc.htm", false);
// Post data to the HTTP server.
WinHttpReq.Send("Post data");
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows XP, Windows 2000 Professional dengan SP3 [hanya aplikasi desktop] |
Server minimum yang didukung |
Windows Server 2003, Windows 2000 Server dengan SP3 [hanya aplikasi desktop] |
Redistribusi |
WinHTTP 5.0 dan Internet Explorer 5.01 atau yang lebih baru pada Windows XP dan Windows 2000. |
IDL |
|
Pustaka |
|
DLL |
|