HttpOpenRequestA 関数 (wininet.h)
HTTP 要求ハンドルを作成します。
構文
HINTERNET HttpOpenRequestA(
[in] HINTERNET hConnect,
[in] LPCSTR lpszVerb,
[in] LPCSTR lpszObjectName,
[in] LPCSTR lpszVersion,
[in] LPCSTR lpszReferrer,
[in] LPCSTR *lplpszAcceptTypes,
[in] DWORD dwFlags,
[in] DWORD_PTR dwContext
);
パラメーター
[in] hConnect
InternetConnectによって返される HTTP セッションへのハンドル。
[in] lpszVerb
要求で使用する HTTP 動詞を含む null-terminated 文字列へのポインター。 このパラメーターが NULL
[in] lpszObjectName
指定した HTTP 動詞のターゲット オブジェクトの名前を含む、null終了文字列へのポインター。 これは通常、ファイル名、実行可能モジュール、または検索指定子です。
[in] lpszVersion
要求で使用する HTTP バージョンを含む null-terminated 文字列へのポインター。 Internet Explorer の設定は、このパラメーターで指定された値をオーバーライドします。
このパラメーターが NULL
価値 | 意味 |
---|---|
|
HTTP バージョン 1.0 |
|
HTTP バージョン 1.1 |
[in] lpszReferrer
要求 (lpszObjectName
[in] lplpszAcceptTypes
nullクライアントが受け入れるメディアの種類を示す文字列の終端配列へのポインター。 例を次に示します。
PCTSTR rgpszAcceptTypes[] = {_T("text/*"), NULL};
NULL ポインターで配列を正しく終了しないと、クラッシュが発生します。
このパラメーターが NULL
[in] dwFlags
インターネット オプション。 このパラメーターには、次のいずれかの値を指定できます。
価値 | 意味 |
---|---|
|
ERROR_INTERNET_CONNECTION_RESET (サーバーとの接続がリセットされました) またはERROR_INTERNET_CANNOT_CONNECT (サーバーへの接続の試行に失敗) が原因でリソースのネットワーク要求が失敗した場合に、キャッシュからリソースを返します。 |
|
ネットワークからアイテムを再読み込みするかどうかを決定するときに、有効期限時間がなく、サーバーから LastModified 時刻が返されなかった場合は、強制的に再読み込みを行います。 |
|
要求で指定されたホスト名に対してサーバーから返される SSL/PCT ベースの証明書のチェックを無効にします。 WinINet 関数では、一致するホスト名と単純なワイルドカード規則を比較することで、証明書に対する単純なチェックを使用します。 |
|
SSL/PCT ベースの証明書の正しい有効期間のチェックを無効にします。 |
|
この特殊な種類のリダイレクトの検出を無効にします。 このフラグを使用すると、WinINet 関数は HTTPS から HTTP URL へのリダイレクトを透過的に許可します。 |
|
この特殊な種類のリダイレクトの検出を無効にします。 このフラグを使用すると、WinINet 関数は HTTP から HTTPS URL へのリダイレクトを透過的に許可します。 |
|
接続にキープアライブ セマンティクス (使用可能な場合) を使用します。 このフラグは、Microsoft Network (MSN)、NT LAN Manager (NTLM)、およびその他の種類の認証に必要です。 |
|
ファイルをキャッシュできない場合は、一時ファイルを作成します。 |
|
認証を自動的に試行しません。 |
|
httpSendRequestでリダイレクト |
|
返されたエンティティをキャッシュに追加しません。 |
|
要求に Cookie ヘッダーを自動的に追加せず、返された Cookie を Cookie データベースに自動的に追加しません。 |
|
Cookie ダイアログ ボックスを無効にします。 |
|
キャッシュされたコピーがプロキシ上に存在する場合でも、配信元サーバーによって要求が解決されるように強制します。 |
|
要求されたファイル、オブジェクト、またはディレクトリの一覧をキャッシュからではなく、配信元サーバーから強制的にダウンロードします。 |
|
前回のダウンロード以降にリソースが変更された場合は、HTTP リソースを再読み込みします。 すべての FTP リソースが再読み込みされます。
Windows XP および Windows Server 2003 R2 以前: Gopher リソースも再読み込みされます。 |
|
セキュリティで保護されたトランザクション セマンティクスを使用します。 これは、Secure Sockets Layer/Private Communications Technology (SSL/PCT) の使用に変換され、HTTP 要求でのみ意味があります。 |
[in] dwContext
この操作を任意のアプリケーション データに関連付けるアプリケーション定義値を含む変数へのポインター。
戻り値
成功した場合は HTTP 要求ハンドルを返し、それ以外の場合は NULL
備考
HttpOpenRequest 関数は、新しい HTTP 要求ハンドルを作成し、指定されたパラメーターをそのハンドルに格納します。 HTTP 要求ハンドルは、HTTP サーバーに送信される要求を保持し、要求の一部として送信されるすべての RFC822/MIME/HTTP ヘッダーを含みます。
"GET" または "POST" 以外の動詞が指定されている場合、httpOpenRequest 要求のINTERNET_FLAG_NO_CACHE_WRITEとINTERNET_FLAG_RELOADが自動的に設定されます。
Microsoft Internet Explorer 5 以降では、lpszVerb
Windows 7、Windows Server 2008 R2 以降では、lpszVersion パラメーターは Internet Explorer の設定によってオーバーライドされます。 EnableHttp1_1 は、システムの Internet Explorer で設定 インターネット オプションによって制御される HKLM\Software\Microsoft\InternetExplorer\AdvacnedOptions\HTTP\GENABLE のレジストリ値です。 EnableHttp1_1 値の既定値は 1 です。 HttpOpenRequest 関数は、EnableHttp1_1 が 1 に設定されている場合、1.1 未満のすべての HTTP バージョンを HTTP バージョン 1.1 にアップグレードします。
HttpOpenRequestによって返される
WinINet API の他のすべての側面と同様に、この関数は DllMain またはグローバル オブジェクトのコンストラクターとデストラクターから安全に呼び出すことはできません。
手記
wininet.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして HttpOpenRequest を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | wininet.h |
ライブラリ | Wininet.lib |
DLL | Wininet.dll |
関連項目
WinINet Functions の