問題タブ [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++ - ICU_REJECT_USERPWDフラグが設定されたWinHttpCreateUrlの呼び出しは、Windows 7では機能しますが、Windows XPでは機能しません(Virtual PCを使用)
Windows XP(Windows7のVirtualPCで)で開発しているアプリを実行すると、予期しないエラーが発生します。Windows764ビットProfessionalのVisualStudio2010を使用してコンパイルしています。
XPでURLが正しく作成されない問題を追跡しました。以下は私がこれを示すためにまとめた小さなテストベッドです-
lenを正しいサイズに設定し、 ERROR_INSUFFICIENT_BUFFERを示すために0x7Aのエラーコードを与えることを期待します。これは、Windows 7で発生することです。WindowsXPで実際に発生しているのは、ERROR_INVALID_PARAMETERを示す0x57のエラーコードです。
フラグの値をゼロに設定すると、両方のオペレーティングシステムで正常に機能します。私が解決しようとしているのは、ICU_REJECT_USERPWDがXPで失敗する理由です。
この例ではそのフラグを設定する必要はありませんが、これは問題を表示するためにまとめたテストコードにすぎません。
この問題について助けてくれてありがとう(または私が間違っていることを指摘してくれた人に...)
c++ - 管理者以外のユーザーの場合、localhost の HttpAddUrl が失敗する
Windows HTTP API の使用 localhost で HTTP ファイル サーバーを実行しています。
これには、 の呼び出しが含まれHttpAddUrl(hRequestQueue, L"http://localhost:80/", NULL)
ます。
ERROR_ACCESS_DENIED
ユーザーがアプリケーションを管理者として実行しない限り、これは失敗します。管理者権限を持たないユーザーにこの機能が必要です。(ローカルホスト サーバーを実行しているユーザーの何が問題なのですか?それはユーザー自身のためだけです。)
これを解決することを目的としていると思われるVista および XP 用のホットフィックスを見つけましたが、Windows 7 用のホットフィックスはありません。この記事は、Vista SP1 で修正されたことを示唆しています。 Windows 7に?
管理者以外がサーバーを実行できるようにするために他にできることはありますか?
delphi - WinHttpDelphiラッパー
DelphiXEにWinHTTPラッパーがあるかどうかをアドバイスしてください
優先順に:
- 箱から出してすぐに使えるデルファイユニット
- 移植されたエントリルーチンを含むサードパーティのオープンソースpasファイル
- xxx_TLB.pasラッパー
解決:
コメントはフォーマットされたコードを許可しないので、私は質問に解決策を貼り付けています:
まだいくつか足りないものがあります:
delphi - Delphi XE を使用して、WinHTTP 経由でダウンロードしたファイルをディスクに保存します。
この質問への回答は、デルファイでタイプ ライブラリ インポートを介して WinHTTP を使用することがいかに簡単かを示しました。
WinHTTP のタイプ ライブラリをインポートし、その API を使用してファイル ダウンロード ヘルパー関数を記述しようとしました。これが私が得た距離です:
IWinHttpRequest.ResponseStream (TLB ファイルで OleVariant として宣言されている) をストリームとしてディスクに保存する方法がわかりません。
WinHTTP_TLB.pas からの抜粋:
更新: への呼び出しで、ole バリアントに関する実行時例外が発生するようになりましたhttp.ResponseStream.CopyTo(...)
post - WinHttp Post が Web サイトのコンテンツを取得できない
この問題は、https への呼び出し時に発生しますが、http への呼び出しでは正常に機能します。
どうすればこれを解決できますか?
以下の完全な作業コード:
delphi - Delphi、Winhttp、Googleログイン、Fusion Tables
これは私の前の質問の続きです:
Delphi、WebBrowser、Google Login、FusionTable
しかし、WinHTTPを使用したテストもTWebBrowserベースのテストとして失敗しました...
そして、これはあなたが望むように1つの質問です... :-)
NOW PUBLICとは1つのテーブルがありますが、非無料アカウントを購入すると、プライベートタイプに変更されます。
簡単なWinHTTPテストを作成しましたが、これも失敗しました。
ログインできます。「Auth」タグを取得しましたが、次の「private」リクエストで401エラーが返されます。
「選択」すると、行が表示されます。しかし、テーブル名を表示したい場合、401エラーが発生します...
このエラーの原因がわかりません。
a。無料アカウントには、個人的にアクセスするための十分な権限がありません
。ヘッダーを間違って設定しました
c。csSourceを間違って設定しました(「MyCompanyName-Test-1.0」に設定しました)
。d。他に何がわからないのか...
誰かがログインしてデータに正常にアクセスする方法を教えてもらえますか?
c++ - C++ NPAPI WinHttpConnect が失敗しました
今、私は問題がhConnect
デバッガーを介して正常に初期化されていないことを知っています。なぜだろうか、ありがとう
そのJavaScriptコードの呼び出し元
その C++ ソース
c - WinHttp からの要求の実際の合計ヘッダー サイズを取得する
タイトルがすべてを物語っています。WinHttp からサーバーの応答に含まれるヘッダーのサイズを取得するのは簡単ですが、HTTP バージョン、動詞、URL、および API がおそらく追加するランダムなものを含む、要求の合計サイズを知る必要があります。1 つのリクエストの合計サイズに 8k の制限があることは知っていますが、8k のヘッダーを指定するとエラーが発生します。
要求の合計サイズを取得するために、HTTP 標準で必要とされるすべてのものを手動で合計する必要がありますか? 関数が必要なようです。
delphi - MSXML / ServerXmlHttp POST が断続的に失敗する (Delphi)
MSXML コンポーネントを使用して安全な Web サーバーに XML を POST する従来の Delphi コードがあります。
コードは何年も正常に機能しています。最近、XML ファイルのサイズを少し大きくするいくつかの変更を行いましたが、それほど大きくはありません。XML のサイズ自体はまだ比較的小さく、たとえば 100k 以下です。
サーバーログを確認したところ、失敗はユーザー/パスが渡されないことがあるという事実による認証エラーです。これは断続的に発生します。唯一の変更点は、XML のサイズが少し大きくなったことです。
これは、POST が失敗するまで xml ファイルを段階的に拡張することで確認できます。逆の手順を実行して確認することもできます (つまり、大きなファイルを取得し、POST が成功するまで段階的に縮小します)。
以下にサンプルコードを示します。この場合、xml をファイルからロードします。実際のコードではストリームを使用していますが、これは問題ではないと確信しています。
https サーバーへの途中で認証データが失われる理由を知っている人はいますか? 特定の場合に認証のネゴシエーションで問題が発生した MSXML について何か思い出したようですが、投稿される XML のサイズとは関係がなかったと思います。
ありがとうございました -
c++ - WinHTTP による SSL
winhttp を使用して、Web サイトというクライアントが 1 つしかない単純な Web サーバーを作成しました。SSLを有効にするまでは完全に機能しました。エラーは発生せず、すべてが機能しているように見えますが、Web サイトが接続しようとするとエラー コード 104 が表示され、サーバーにアクティビティが表示されません。ウェブサイトは専門家によって作成されたものであるため、バグは私のコードにある可能性が非常に高い. 私は Web プログラミングについて何も知らないので、問題をデバッグするために C++ でテスト クライアントを作成しました。SSLなしでサーバーに接続できます。しかし、クライアント証明書を設定しようとすると失敗します。だから今、私は2つの問題を抱えています。
サーバーコードの関連部分は次のとおりです。
ドキュメントには、 pDefaultSslCtlIdentifier が NULL の場合に何が起こるかについては何も記載されていませんが、サーバーが信頼できる証明書を受け入れることを意味すると思います。必要なものを設定しようとしましたが、HttpSetServiceConfiguration 呼び出しが失敗しました。
クライアント側で WinHttpSetOption が失敗し、GetLastError() が 6 を返します。デバッグ出力にアクセス違反エラーが表示されることがあります。報告されたアドレスは request の値に近いです。クライアントコード:
このスクリプトを使用して証明書を作成しました。
そのようなことはわかりませんが、SSLに適した証明書を作成することになっています。
このテーマに関する優れたチュートリアルがあれば、それは素晴らしいことです。これまでに見つけたものは、上記のコードを書くのに十分でした.