いくつかのサポートHTTPSセキュリティプロトコル
/// <要約> /// 取得请求 /// </要約> /// ます。<param name = "URL"> </ param>の /// <PARAM NAME = "タイムアウト"> </ param>の // / <PARAM NAME = "エンコード"> </ PARAM> /// <戻る> </戻り> パブリック ストリング Request_Get(文字列 URL、INT タイムアウトエンコードエンコード) { 文字列結果= "" ; HttpWebRequestの要求 = (HttpWebRequestの)HttpWebRequest.Create(URL); HttpWebResponseの応答 = nullを。 試します { // セットのServicePointエンティティ ServicePointManager.Expect100Continue = trueに ; // もし100-続け、POST要求の前に、要求が最初のヘッダフィールド含んでいるか否かによってプロトコル ServicePointManager.ServerCertificateValidationCallback = デリゲートを { 戻り trueに ;}; // コールバック統一されたアプローチ = SecurityProtocolType.Ssl3 ServicePointManager.SecurityProtocol | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12; // プロトコルセキュリティプロトコル提供 // 要求 request.Accept = " テキスト/ HTML、ファイルアプリケーション/ XHTML + XML、ファイルアプリケーション/ XML; Q = 0.9、* / *; Q = 0.8 "; request.Timeout = タイムアウト。 request.Proxy = nullを。 request.UserAgent = " Mozillaの/ 5.0(Windows NTの6.1; WOW64; RV:11.0)のGecko / 20100101 Firefoxの/ 11.0 " ; // 响应 応答= (HttpWebResponseの)request.GetResponse(); ストリームstream = request.GetRequestStream()。 StreamReaderをStreamReaderを = 新しいStreamReaderを(ストリーム、エンコード)。 リターンstreamReader.ReadToEnd(); } キャッチ(例外EXC) { 戻りexc.Messageと、 } 最後に { 場合(応答!= NULL ){response.Close()。} もし(リクエスト!= NULL ){request.Abort()。} } } パブリック 静的 文字列 Request_Post(文字列のURL、文字列のParam、INT タイムアウト、符号化コード) { バイト [] P = encode.GetBytes(パラメータ)。 // 请求 HttpWebRequestの要求=(HttpWebRequestの)WebRequest.Create(URL); HttpWebResponseのレスポンス = ヌル; ストリームストリーム = ヌル; // request.KeepAlive = trueに; // 近い、中止の場所との回線接続、オフ request.method = " POSTの" ; / / * / * /必要性を直接開くことがあれば request.Accept = " 画像/ GIF、画像/ JPEG、画像/ pjpeg、画像/ pjpeg、ファイルアプリケーション/ X-ショックウェーブ-フラッシュ、ファイルアプリケーション/ vnd.ms-エクセル、ファイルアプリケーション/ VND Powerpoint-.ms、ファイルアプリケーション/ MSWordの、ファイルアプリケーション/ X-MS-ファイルのアプリケーション、ファイルアプリケーション/ X-MS-XBAP、ファイルアプリケーション/ vnd.ms - XpsDocument、ファイルアプリケーション/ XML XAML +、* / * "; // 要求タイプ request.ContentType = " アプリケーション/ X - WWW-form-urlencodedで" ; // クライアントのブラウザ情報 request.UserAgent = " 互換性のMozilla / 4.0(; MSIE 7.0; Windows NTの5.2;トライデント/ 4.0 ;. CLR 1.1.4322 NET; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; Maxthonは2.0)" ; // 長さ、 gzipとデフォルト値は-1になります request.ContentLength = p.Length; // に応じ 試し { // バイトストリームにリクエストを転送し、書き込みパラメータ、およびレスポンスオブジェクトへの応答を返し、読み取りバイト ストリーム=request.GetRequestStream(); stream.Write(P、0 、p.Length)。 stream.Close(); 応答 = (HttpWebResponseの)request.GetResponse(); StreamReaderをStreamReaderを = 新しいStreamReaderを(response.GetResponseStream()、エンコード)。 リターンstreamReader.ReadToEnd(); } キャッチ(例外EXC) { 戻りexc.Messageと、 } }