zoukankan      html  css  js  c++  java
  • 请求url数据

      1 using System;
      2 using System.Collections.Generic;
      3 using System.IO;
      4 using System.Linq;
      5 using System.Net;
      6 using System.Text;
      7 using System.Threading.Tasks;
      8 
      9 namespace TheDataTransfer.Dao
     10 {
     11     class Transfer
     12     {
     13         /*
     14     *  url:POST请求地址
     15     *  postData:json格式的请求报文,例如:{"key1":"value1","key2":"value2"}
     16     */
     17 
     18      public static string PostJsonUrl(string url, string postData)
     19         {
     20             string result = "";
     21 
     22             HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
     23 
     24             req.Method = "POST";
     25 
     26             req.Timeout = 800;//设置请求超时时间,单位为毫秒
     27 
     28             req.ContentType = "application/json";
     29 
     30             byte[] data = Encoding.UTF8.GetBytes(postData);
     31 
     32             req.ContentLength = data.Length;
     33 
     34             using (Stream reqStream = req.GetRequestStream())
     35             {
     36                 reqStream.Write(data, 0, data.Length);
     37 
     38                 reqStream.Close();
     39             }
     40 
     41             HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
     42 
     43             Stream stream = resp.GetResponseStream();
     44 
     45             //获取响应内容
     46             using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
     47             {
     48                 result = reader.ReadToEnd();
     49             }
     50 
     51             return result;
     52         }
     53 
     54 
     55 
     56      public static string PostXmlUrl(string url, string Data)
     57      {
     58          string result = "";
     59 
     60          StreamWriter myWriter = null;
     61 
     62          HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(url);
     63          objRequest.Method = "POST";
     64          objRequest.ContentLength = Data.Length;
     65          objRequest.ContentType = "text/xml";//提交xml 
     66          //objRequest.ContentType = "application/x-www-form-urlencoded";//提交表单
     67          try
     68          {
     69              myWriter = new StreamWriter(objRequest.GetRequestStream());
     70              myWriter.Write(Data);
     71          }
     72          catch (Exception e)
     73          {
     74              return e.Message;
     75          }
     76          finally
     77          {
     78              myWriter.Close();
     79          }
     80 
     81          HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
     82          using (StreamReader sr = new StreamReader(objResponse.GetResponseStream()))
     83          {
     84              result = sr.ReadToEnd();
     85              sr.Close();
     86          }
     87          return result;
     88      }
     89 
     90 
     91 
     92      protected string GetWebContent(string url)
     93      {
     94          Stream outstream = null;
     95          Stream instream = null;
     96          StreamReader sr = null;
     97          HttpWebResponse response = null;
     98          HttpWebRequest request = null;
     99          // 要注意的这是这个编码方式,还有内容的Xml内容的编码方式
    100          Encoding encoding = Encoding.GetEncoding("GBK");
    101          byte[] data = encoding.GetBytes(url);
    102 
    103          // 准备请求,设置参数
    104          request = WebRequest.Create(url) as HttpWebRequest;
    105          request.Method = "POST";
    106          //request.ContentType = "text/plain";
    107          request.ContentLength = data.Length;
    108 
    109          outstream = request.GetRequestStream();
    110          outstream.Write(data, 0, data.Length);
    111          outstream.Flush();
    112          outstream.Close();
    113          //发送请求并获取相应回应数据
    114 
    115          response = request.GetResponse() as HttpWebResponse;
    116          //直到request.GetResponse()程序才开始向目标网页发送Post请求
    117          instream = response.GetResponseStream();
    118          sr = new StreamReader(instream, encoding);
    119          //返回结果网页(html)代码
    120 
    121          string content = sr.ReadToEnd();
    122          return content;
    123      }
    124     }
    125 }
  • 相关阅读:
    模拟登录
    服务器的
    多线程爬虫
    新浪微博
    。。
    ** turtle模块和random模块
    收藏链接python--向大神学习
    126邮箱发送邮件测试1
    LabVIEW版本控制(转)
    正交编码器单端转差分
  • 原文地址:https://www.cnblogs.com/cwmizlp/p/10062568.html
Copyright © 2011-2022 走看看