問題タブ [winhttp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Windows APIには、URLに適切なHTTPプロキシを提供する一般的なメソッドがありますか?
私は世界中に配布することを目的としたアプリケーションを書いています。最近、WinHTTPのメソッドを発見しました。
http://msdn.microsoft.com/en-us/library/aa384097(VS.85).aspx
これにより、NetscapeスタイルのPACファイル(Javascript)をデコードし、使用する可能性のあるURLに使用する正しいプロキシを教えてくれます。
それはすべて素晴らしいことですが、一部の会社のサイトでは「ins」ファイル(http://support.microsoft.com/kb/171783)を使用したプロキシ構成を使用していることに気付きました。WinHTTPサービスはこれを理解していないようです。構成のスタイル。
それで、私が使用できる別の方法はありますか?確かに、Microsoftの多くのさまざまな構成標準のすべてを理解する機能がどこかにあるはずですか?
ありがとう!
httpwebrequest - Msxml2.ServerXMLHTTP と WinHttp.WinHttpRequest の違いは?
Msxml2.XMLHTTP と Msxml2.ServerXMLHTTP の違いをようやく理解したとき
http://support.microsoft.com/kb/290761
XMLHTTP はクライアント アプリケーション用に設計されており、Microsoft Win32 Internet (WinInet) 上に構築された URLMon に依存しています。ServerXMLHTTP はサーバー アプリケーション用に設計されており、新しい HTTP クライアント スタックである WinHTTP に依存しています。ServerXMLHTTP は、信頼性とセキュリティを提供し、サーバーに対して安全です。詳細については、MSXML ソフトウェア開発キット (SDK) のドキュメントを参照してください。
突然、WinHttp.WinHttpRequest を見つけました...
http://msdn.microsoft.com/en-us/library/aa382925(VS.85).aspx
Microsoft Windows HTTP サービス (WinHTTP) は、サーバーがサポートする、HTTP/1.1 インターネット プロトコルへの高レベル インターフェイスを開発者に提供します。WinHTTP は、HTTP サーバーと通信するサーバー アプリケーションによって、主にサーバー ベースのシナリオで使用されるように設計されています。
では、これは Msxml2.ServerXMLHTTP とどう違うのですか?
(まあ、暗黙の質問は、どれを使うべきかということです...)
c++ - winhttp で特定のサイトとパスの Cookie を取得する方法
リクエストを送信しようとしている特定のホストとパスに基づいて、winhttp セッション キャッシュに保存されている Cookie を取得したいと考えています。リクエストを送信する前にこれらの Cookie を取得したいので、リクエスト ハンドルはまだありません。セッション ハンドルと接続ハンドル、そしてもちろんリクエストの送信先のパスとホストしかありません。
つまり、実際にリクエストを送信する前に、winhttp がサーバーに送信する Cookie を取得したいと考えています。
私が尋ねている理由は、私たちのサーバーが特定のヘッダーをチェックするためです。これは、とりわけ Cookie に基づいて md5 チェックと一致するように設定する必要があります。サーバーコードなどを制御することはできません。
乾杯、
vba - 「WinHttp.WinHttpRequest.5.1」による Mantis BT エクスポート要求
上司から、会社の Mantis バグ データベースを Excel にエクスポートするように依頼されましたが、SQL Server へのアクセスを許可してもらえず、プロセスを自動化する必要があります。
私が使用できる唯一のものはExcelです(ODBCなし、手動エクスポートなし)。
だから私はこれを行うことができました:
(* : コード参照) 前の行で、ResponseText に「2200 bugs」と表示されていたので、最後のクエリ (csv_export.php) までは問題ありませんでした。スクリプトは、ブラウザー経由で呼び出されると、それを呼び出したページとまったく同じように表示されます (ページに 2 つのバグが表示された場合、CSV には 2 つのバグが含まれます)。私の 2200 のバグが IE / Firefox に表示されているので、CSV は 2200 のバグをもたらします。しかし、Excel では、ResponseText に 2200 のバグが表示されていても、CSV には 624 のバグがあります...まるで「高度なフィルター」ページを呼び出さなかったかのように :(
誰かが私を理解して助けてくれることを願っています;)
前もって感謝します、
デビッド
c# - WinHTTPコネクト
WinHttpに(「GET」または「POST」ではなく)「CONNECT」呼び出しを行わせようとしています。これは次のようになります。
ただし、winhttpは常に、次のように「CONNECT」動詞の後にパスを適用します(場所の前)。
回避策はありますか?または私は何か間違ったことをしていますか?これはC#.net 3.5フレームワーク、Winhttp5.1にあります
c# - Winhttp が使用する必要があるネットワーク カード/接続を指定する
Winhttp を使用して Web 要求を行う C# のアプリケーションがあります。WinHTTP が接続に使用する必要があるネットワーク カードを指定する方法はありますか?
c++ - WinHTTP IWinHttpRequest iface - クッキー処理 - 応答からクッキーを取得する方法は?
WinHTTP IWinHttpRequest オブジェクトを使用しています。クレデンシャルでリクエストボディを指定するhttpsドメインにPOSTします。サイトは、HTTP 応答で Cookie を返すことが期待されています。コードは Wininet で動作しますが、WinHTTP で HTTP 応答から Cookie を取得する方法がわかりません。
誰でも助けることができますか?
ドミニク
c - WinHttp: 一時的な証明書ストアを使用するには?
サーバーの 1 つに HTTPS 接続を行う C++ アプリケーションがあります。私の理想の世界では、次のことが起こることを望みます。
- アプリの起動
- アプリは、Windows がサーバーのルート CA を信頼するようにします (GUI は使用せず、システム コールのみを使用してください)。
- アプリはサーバーと通信し、その作業を行います。
- アプリは Windows にサーバーのルート CA を忘れさせます
- 終わり
このルート CA が他のアプリから信頼される必要はありません。したがって、証明書をシステム全体にインストールしたくありません。ユーザーが管理者権限を必要としない場合も希望します。
私の最初の計画は、インメモリ (CERT_STORE_PROV_MEMORY) ストアを作成し、そこに証明書を追加してから、CertAddStoreToCollection を使用してそのインメモリ ストアをシステム ストアに追加することでした。
すべての CryptoAPI 関数呼び出しは成功しますが、WinHttp はそれを好みません。
これが私がやっていることの骨子です - おそらく誰かがトリックを知っていますか? それとも、そもそもこれは頭がおかしいのでしょうか?
いくつかのメモ:
- WinHttp の SECURITY_FLAG_IGNORE_UNKNOWN_CA を使用するとすべてが機能するため、これが本当に問題であると確信しています。
- 私はすでにこのSOの質問を見てきました-それは近いですが、アプリの実行中に証明書を一時的にのみ信頼するという問題には対処していません。
ありがとう!
windows-server-2008 - WinHttpRequest.5.1を使用する前に、本当にWindows Server 2008にWinHttpを登録する必要がありますか?
基本的に、これはWindows Server 2008のバグだと思いますが、私はCOM忍者ではないので、何か馬鹿げたことをしている可能性も同じように思われます。問題は、バグまたはプログラマーのエラーですか?
WinHttpRequest(WinHttpのActiveXコンポーネント)を使用してhttp://およびhttps://を読み取ります。コンポーネントの検索に使用しているProgIDはですWinHttp.WinHttpRequest.5.1
。
このアプリケーションは、XPおよびWindows Server 2003で正常に動作しました。WindowsServer2008では0x800029C4A "Error loading type library/DLL"
、タイプライブラリの読み込み中にエラー()が発生しました。winhttpを再登録すると、問題が修正されます。問題は、なぜですか?
何度も行き詰まった後、レジストリで次のことを見つけました。
インストールされているWindows2008Server SP2:
を呼び出した後regsvr32 %SystemRoot%\System32\WinHttp.dll
、このキーは値を変更します。
私の理解では、タイプのキーはREG_EXPAND_SZ
システムパスを拡張します%SystemRoot%
が、拡張REG_SZ
しません。したがって、タイプはREG_EXPAND_SZ
、であるか、拡張パスを使用する必要があります。WinHttpを再登録すると、パスが修正され、WinHttpRequestが修正されます。(私が知る限り、XPは使用されC:\Windows\System32\winhttp.dll
、Server2003は私のために機能するSxSインストールを使用しました>0
ですから、これはバグだと思います。Microsoftにバグを報告しました(または、少なくともconnect.microsoft.comという沼地からできる限りのことです)。しかし、ここでは取得できない部分があります。WindowsServer以降2008とVistaは非常に似ており、この問題はVistaにも存在する可能性があります。WinHttpRequestは、一般的に使用されるオブジェクトである必要があります。大衆は悲鳴を上げているはずですが、グーグルを何度も繰り返した後、人々がこの問題に遭遇したスレッドは1つだけでした。
winhttpを再登録すると問題が修正されるので、それを実行しています。これを投稿するのは、a)この一般的に使用されるコンポーネントを再登録することがベストプラクティスであるとは信じられないためです。b)バグである場合は、他の誰かに役立つ可能性があります。
-ロブ