Condividi tramite


Metodo IXMLHTTPRequest2::Open (msxml6.h)

Inizializza una richiesta IXMLHTTPRequest2 e specifica il metodo, l'URL e le informazioni di autenticazione per la richiesta. Dopo aver chiamato questo metodo, è necessario chiamare il metodo Send per inviare la richiesta e i dati, se presenti, al server.

Sintassi

HRESULT Open(
  [in]           const WCHAR              *pwszMethod,
  [in]           const WCHAR              *pwszUrl,
  [in, optional] IXMLHTTPRequest2Callback *pStatusCallback,
  [in, optional] const WCHAR              *pwszUserName,
  [in, optional] const WCHAR              *pwszPassword,
  [in, optional] const WCHAR              *pwszProxyUserName,
  [in, optional] const WCHAR              *pwszProxyPassword
);

Parametri

[in] pwszMethod

Il metodo HTTP usato per aprire la connessione, ad esempio GET o POST. Per XMLHTTP, questo parametro non è distinzione tra maiuscole e minuscole.

[in] pwszUrl

URL richiesto. Questo deve essere un URL assoluto, ad esempio "http://Myserver/Mypath/Myfile.asp".

[in, optional] pStatusCallback

Interfaccia di callback implementata dall'app per ricevere eventi di callback.

Quando il metodo Send ha esito positivo, i metodi di questa interfaccia vengono chiamati per elaborare la risposta o altri eventi.

[in, optional] pwszUserName

Nome dell'utente per l'autenticazione. Se questo parametro è null e il sito richiede l'autenticazione, le credenziali verranno gestite da Windows, inclusa la visualizzazione di un'interfaccia utente di accesso, a meno che non sia disabilitata da SetProperty.

[in, optional] pwszPassword

Password per l'autenticazione. Questo parametro viene ignorato se il parametro pwszUserName è Null o mancante.

[in, optional] pwszProxyUserName

Nome dell'utente per l'autenticazione nel server proxy. Se questo parametro è una stringa Null o vuota e il sito richiede l'autenticazione, le credenziali verranno gestite da Windows, inclusa la visualizzazione di un'interfaccia utente di accesso, a meno che non sia disabilitata da SetProperty.

[in, optional] pwszProxyPassword

Password per l'autenticazione nel server proxy. Questo parametro viene ignorato se il parametro pwszProxyUserName è Null o mancante.

Valore restituito

Restituisce S_OK sull'esito positivo.

Commenti

Anche se questo metodo accetta le credenziali passate tramite parametro, queste credenziali non vengono inviate automaticamente al server nella prima richiesta. I parametri pwszUserName e pwszPassword non vengono inviati al server a meno che il server non sfiderà il client per le credenziali con una risposta 401 - Non autorizzata.

Esempio

//
// Create and initialize an IXMLHTTPRequest2 object
//
hr = CoCreateInstance(CLSID_FreeThreadedXMLHTTP60,
                      NULL,
                      CLSCTX_INPROC_SERVER,
                      IID_PPV_ARGS(&spXHR));

//
//Create and initialize an IXMLHTTPRequest2Callback object
//
hr = MakeAndInitialize<CXMLHttpRequest2Callback>(&spXhrCallback);

hr = spXHR->Open(L"GET",              // Method.
                 pcwszUrl,            // Url.
                 spXhrCallback.Get(), // Callback.
                 NULL,                // Username.
                 NULL,                // Password.
                 NULL,                // Proxy username.
                 NULL);               // Proxy password.

//
//Send the GET request
//
hr = spXHR->Send(NULL, 0);

hr = spXhrCallback->WaitForComplete(&dwStatus);

Per gli esempi completi, vedere l'esempio XML HTTP Request 2 GET e l'esempio DI RICHIESTA HTTP HTTP XML 2 POST.

Requisiti

Requisito Valore
Client minimo supportato Windows 8 [app desktop | App UWP],MSXML 6.0 e versioni successive
Server minimo supportato Windows Server 2012 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione msxml6.h

Vedi anche

IXMLHTTPRequest2

Interfaccia IXMLHTTPRequest2Callback

Metodo Send