問題タブ [system.net.httpwebrequest]
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# - ASP.NET、HttpWebRequest、および「SSL/TLS セキュア チャネルを作成できませんでした」
はい、SO と Google で同様の質問が多数あることは知っています。はい、私はそれらをすべて読み、そこに書かれていることをすべて試しました。はい、どの解決策も役に立ちませんでした。
ASP.NET アプリケーションのコンテキストで使用されるクラス ライブラリがあります。私のクラス ライブラリは、サード パーティの HTTPS Web サイトからデータをダウンロードします。その Web サイトにはクライアント証明書が必要です。に証明書を追加しLOCAL_MACHINE\MY
、アクセス権を付与しましたwinhttpcertcfg
。
私のLogIn
方法は、その証明書をストアで見つけます。デバッグ出力に見られるように、この段階ではすべて問題ありません。しかし、後でページを読み込もうとすると、The request was aborted: Could not create SSL/TLS secure channel.
例外が発生します。
私のコード:
何か案は?
c# - C# WebRequest を使用して、名前に RTL 文字を含むファイルをダウンロードする
名前にヘブライ文字を含むファイルをダウンロードしようとしています
ブラウザでダウンロードしようとすると、ファイル名が正しくエンコードされ、サーバーがファイルを返します。
サーバーから C# コードをダウンロードしている場合、ファイル名が適切にエンコードされていないため、サーバーはエラー 403 を返します。
を使用してファイル名をエンコードHttpUtility.UrlEncode()
してクラスに渡すと、WebRequest
適切にエンコードされますが、同じ結果になります (エラー 403)。
Fiddler で Web 呼び出しを調べたところ、エンコードされたファイル名が、ブラウザーがエンコードしているファイルとは異なります。ファイル名を取得してデコードすると、ファイル名が異なります(以下を参照)
問題は、ファイル名が右から左への文字で部分的にエンコードされており、WebRequest クラスにそれを処理するメソッドが装備されていないことだと思われます。すべてのファイルをダウンロードするために使用されるコードを以下に示します。
c# - c#でHttpWebResponseのLastModified日付を取得するには?
Windows Phone 8.1 用の画像のキャッシュを作成しようとしています。これを行うには、HttpWebRequest の LastModified プロパティを読み取る必要があります。Google を検索したところ、これが見つかりました。動作しません。私はこのコードを持っています:
日付を取得するにはどうすればよいですか?
c# - WebRequest 経由でファイルを送信する
C# を使用して、アプリケーション/オクテット ストリームのコンテンツ タイプでファイルを送信する必要があります。
以下のような HttpWebRequest を作成できます。
ストリームにファイルを追加するにはどうすればよいですか?
c# - HttpWebRequest をシリアライズする
ソケットで HttpWebRequest を送信しようとしましたが、それをシリアライズしたいときに、次の例外が発生します。
タイプ 'System.Runtime.Serialization.SerializationException' の未処理の例外が mscorlib.dll で発生しました' はシリアライズ可能としてマークされていません。
これは私のコードです:
および私のシリアライズクラス:
クラスを Serializable() として設定していますが、機能していませんでした。
問題はどこだ?
cookies - Httpwebrequest POST メソッド [Cookie が有効になっていません]
最近、http Web リクエスト ポスト メソッドを使用して source.amazon.com にログインしようとしました。私はすべて正しいのですが、リクエストを作成しようとするたびに. 「Cookie が有効になっていません」と表示されます。私はクッキーコンテナを使用していますが、それでも. これが私のコードです:[どんな助けでも大歓迎です]
Dim tempCookies As CookieContainer
Dim logincookie As CookieContainer
Dim postData As String = "appActionToken=bPQVeahS2jIO4B1Cb7M53hzMOFEj3D&appAction=SIGNIN&openid.pape.max_auth_age=ape%3AMA%3D%3D&openid.ns=ape%3AaHR0cDovL3NwZWNzLm9wZW5pZC5uZXQvYXV0aC8yLjA%3D&prevRID=ape%3AMTNKSlBHREM3WEJLOFZYRVI2QTA%3D&pageId=ape%3Aa29yX2IyYnBvcnRhbF9uYQ%3D%3D&openid.identity=ape% 3AaHR0cDovL3NwZWNzLm9wZW5pZC5uZXQvYXV0aC8yLjAvaWRlbnRpZmllcl9zZWxlY3Q%3D&openid.claimed_id=ape%3AaHR0cDovL3NwZWNzLm9wZW5pZC5uZXQvYXV0aC8yLjAvaWRlbnRpZmllcl9zZWxlY3Q%3D&openid.mode=ape%3AY2hlY2tpZF9zZXR1cA%3D%3D&openid.assoc_handle=ape%3Aa29yX2IyYnBvcnRhbF9uYQ%3D%3D&marketPlaceId=ape%3AQTFWMlNZTFRNUFAzNjI%3D&openid.return_to=ape%3AaHR0cHM6Ly9zb3VyY2UuYW1hem9uLmNvbS8jL2Rhc2hib2FyZA%3D%3D&email=EMAIL&create= 0&パスワード=パスワード&metadata1=OAL6NohRZ7zCHzgzUIxnrUVUf8OJ%2F%2BSqjeyfxKqF7GP%2B8P4eei5ozS7eVbWpYaxOJ0pZmsgS7uNT7yWrk0eN5XHYn%2FsM6nm4dgGOaXwTA7sOwm8YMUizaxcmZakGUhGnHk%2BJ5hyEIVMDk0CZTP8IZrstTyPlpkQERj5c3b4y2JrbWgLVu0PaYTF1xunw1aSWobbEw9aaO3%2FSXUL6KmTkHYTaJ%2BX3rnqdkykYeVX7%2FSD%2FWq1sRaJ6y3eymefpoKRfbeYNqmpPbuVrgDKickIfy%2BTfUpeVm2H0uuUawHf6lhuhX4NJbsQZBMR9hPN631Ulufr%2FRWfMTS8SXY%2BI9F8H9HT%2F8gsYSdSR8W3umRmGjDZeD1melAJLSbVoIx3%2B2tSTSqlJ6wG0%2F9Pi7RIL5BQHQuEPg%2FRoGjWbZj60kfOirI59pn91r%2FtNFJKP2EXE7G14rcT57zu25UEg2QEE20Br668jhjOwR0I47CERdXFDdINPxH5rfDIbRM4Axm1fdfSF08S1DeTI9Yq4H%2BNWvtn%2Bsu%2FfL5un3b7JWNOKcZHRRbj8%2FKhg2LssGOwc9S4yiDiiGuFdkxlMawc9Pn3ewddTQkPtOz6PgMQENr6udpvNLaEyMKA7T2KWE2SacabX2OiJbkh04lp5wuoM4n86G9eP0yHAk1TZxKQc%2B2vYyoUJHxojLXqKREi5O%2Fv5lBpeN% 2Bk6jQMZjF7MbQbxefAWlQ%2BljSbZ2bug7axwPdTAAlBs239z8zMpOBG0y4%2F47iyMViymqYPKPDoS3%2BZN47baYUVDdp1mUbS71LO74YKaEJEjdfNeT%2B5faXblFCI2e39PSZa%2FlnvNvQU%2Bmkz%2BQDmn2kk62X5tio15DsGp%2FS3Nm3z3XImRlqLsxgqXSzApKPtK6OtHLqGIc5WWpJOXGPqcIMQ2aUuJaMmHfulzPNM06T6Tbp470xznqGwzwHYtEAN3%2FnnvCqsKs2i05yFKpsn1rpXEG5MjtMHth3uXBfItT61xuweapDYR4rqGBCAjNWooUe4Nlvpg2B42scDubRunuYzu7FlcmprrBxhqK1C9xJFC4gHVktX3NaKvTHMWa3gFlWq%2FEsP6ZBgNixtC3VmJKm7OvdzRxelw%3D"
Dim encoding As New UTF8Encoding
Dim byteData As Byte() = encoding.GetBytes(postData)
Dim postReq As HttpWebRequest = DirectCast(WebRequest.Create(" https://source.amazon.com/ap/signin?ie=UTF8&openid.pape. max_auth_age=0&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.claimed_id=http% 3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.mode=checkid_setup&openid.assoc_handle=kor_b2bportal_na&marketPlaceId=A1V2SYLTMPP362&openid.return_to=https%3A%2F%2Fsource.amazon.com%2F%23%2Fdashboard "), HttpWebRequest)
Dim tempCookies As New CookieContainer
postReq.Method = "POST"
postReq. CookieContainer = tempCookies
postReq.KeepAlive = True
postReq.ContentType = "application/xhtml+xml"
postReq.Referer = " https://source.amazon.com/ap/signin?ie=UTF8&openid.pape.max_auth_age=0&openid.ns=http%3A %2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.claimed_id=http%3A%2F%2Fspecs.openid.net %2Fauth%2F2.0%2Fidentifier_select&openid.mode=checkid_setup&openid.assoc_handle=kor_b2bportal_na&marketPlaceId=A1V2SYLTMPP362&openid.return_to=https%3A%2F%2Fsource.amazon.com%2F%23%2Fdashboard "
postReq.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.3) Gecko/20100401 Firefox/4.0 (.NET CLR 3.5.30729)"
postReq.ContentLength = byteData.Length
Postreqstream As Stream = postReq.GetRequestStream()
postreqstream.Write(byteData, 0, byteData.Length)
postreqstream.Close()
Dim postresponse As HttpWebResponse
postresponse = DirectCast(postReq.GetResponse(), HttpWebResponse)
tempCookies.Add(postresponse.Cookies )
logincookie = tempCookies
Dim postreqreader As New StreamReader(postresponse.GetResponseStream())
Dim thepage As String = postreqreader.ReadToEnd
RichTextBox1.Text = thepage
c# - WebException: リモート サーバーがエラーを返しました: (405) Method Not Allowed.ror in / application
ファイルのダウンロードを許可する仮想ディレクトリを持つローカル Web サイトを自分のマシンに構成しました。ファイルは問題なく完全にダウンロードされていますが、GET 要求があります。
問題は、いくつかの要求パラメーターを含めたいため、POST 要求を使用してダウンロードしたいことです。しかし、POST を使用してファイルをダウンロードしようとすると、WebException がスローされます。
リクエストをダウンロードするための私のC#コードは次のとおりです。
私は多くのスレッドを検索しました。ディレクトリの参照を有効にし、リクエスト フィルタリングに POST 動詞を追加し、ハンドラー マッピングに動詞を追加してみました。しかし、成功しませんでした。
問題を理解するのを手伝ってください。
c# - HttpWebRequest と HttpWebResponse のコンストラクターが .NET から削除されたのはなぜですか?
製品コードがこれらの型をインスタンス化することはおそらく意味がありませんが、コンストラクターの非推奨により、Http
実装を使用するユニット テスト クライアントが本来WebRequest/Response
よりもはるかに多くの問題を抱えています。コンストラクターを取り除くことには価値がなく、コンストラクターを持つことには明らかな価値があるとは思いません。では、コンストラクターを廃止する技術的な理由は何ですか?