HttpRequest Get和Post调用其他页面的方法,需要的朋友可以参考一下

//Get请求方式

    private string RequestGet(string Url)
    {
        string PageStr = string.Empty;//用于存放还回的html
        Uri url = new Uri(Url);//Uri类 提供统一资源标识符 (URI) 的对象表示形式和对 URI 各部分的轻松访问。就是处理url地址
        try
        {
            HttpWebRequest httprequest = (HttpWebRequest)WebRequest.Create(url);//根据url地址创建HTTpWebRequest对象
            #region 参数设置
            httprequest.Method = "get";
            //---------------------------------------------设定一些参数(不必要可以)
            //httprequest.KeepAlive = false;//持久连接设置为false
            //httprequest.ProtocolVersion = HttpVersion.Version11;// 网络协议的版本
            //httprequest.Proxy = WebProxy.GetDefaultProxy();//服务器代理
            //httprequest.ContentType = "application/x-www-form-urlencoded";//http 头
            //httprequest.AllowAutoRedirect = true;
            //httprequest.MaximumAutomaticRedirections = 10;
            //httprequest.Timeout = 30000;//设定超时十秒(毫秒)
            //httprequest.UserAgent = "mozilla/4.0 (compatible; msie 6.0; windows nt 5.1)"; //浏览器
            //=================================================
            #endregion
            HttpWebResponse response = (HttpWebResponse)httprequest.GetResponse();//使用HttpWebResponse获取请求的还回值
            Stream steam = response.GetResponseStream();//从还回对象中获取数据流
            StreamReader reader = new StreamReader(steam, Encoding.GetEncoding("gb2312"));//读取数据Encoding.GetEncoding("gb2312")指编码是gb2312,不让中文会乱码的
            PageStr = reader.ReadToEnd();
            reader.Close();
        }
        catch (Exception e)
        {
            PageStr += e.Message;
        }
        return PageStr;
    }

//Post请求方式,于Get的方式写法相似,所以解释就些少一点了

 
  private string RequestPost(string Url,string Context)//两个参数分别是Url地址和Post过去的数据
    {
        string PageStr=string.Empty;
        Uri url = new Uri(Url);
        byte[] reqbytes=Encoding.ASCII.GetBytes(Context);
        try
        {
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
            req.Method = "post";
            req.ContentType = "application/x-www-form-urlencoded";
            req.ContentLength = reqbytes.Length;
            Stream stm = req.GetRequestStream();
            stm.Write(reqbytes, , reqbytes.Length);             stm.Close();
            HttpWebResponse wr = (HttpWebResponse)req.GetResponse();
            Stream stream = wr.GetResponseStream();
            StreamReader srd= new StreamReader(stream,Encoding.GetEncoding("gb2312"));
            PageStr += srd.ReadToEnd();
            stream.Close();
            srd.Close();
        }
        catch (Exception e)
        {
            PageStr += e.Message;
        }
        return PageStr; 
    }
public string WebClientGet(string url)
{
    var client = new WebClient();
    client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
    var stream = client.OpenRead(url);
    if (stream == null) return "";
    var reader = new StreamReader(stream, Encoding.Default);
    var result = reader.ReadToEnd();
    stream.Close();
    reader.Close();
    return result;
}

HttpRequest Get和Post调用其他页面的方法的更多相关文章

  1. layer.open参数;layer.open关闭事件;layer.open关闭刷新;layer.open获取子页的值;layer.open调用子页面的方法

    父页面 function layerOpen() { layer.open({ type: 2, shade: [0], title: "验收申请", area: ['1024px ...

  2. mui---子页面主动调用父页面的方法

    我们在做APP的时候,很多时候会有这样的功能需求,例如:登录,充值,如果登录成功,或充值成功后,需要更改当前页面以及父页面的状态信息,就会用到在子页面调用父页面的方法来实现:在子页面刷新父页面的功能. ...

  3. layer父页面调用子页面的方法

    由于不知道如何在子页面获取到layer定义的确定按钮,于是就在子页面上定义了一个方法,然后在由父页面在点确定按钮时调用子页面所定义的这个方法,从而执行子页面方法里面的内容: 子页面代码: functi ...

  4. layer通过父页面调用子页面的方法及属性

    引言 在使用layer.js的过程中,需要通过layer.open()以iframe的形式打开特定的页面,同时需要用layer的按钮对打开的页面进行提交及重置操作,但是苦于不知如何在父页面调用子页面的 ...

  5. WordPress调用page页面内容方法

    WordPress调用page页面内容方法,有时候在特殊条件下,原有的wordpress页面获取内容代码不能正常使用,这个时候不能通过wordpress自带的模板标签输出,就需要改变下方式,通过PHP ...

  6. easyUi弹出window窗口传值与调用父页面的方法,子页面给父页面赋值

    <!-- 父页面 --> <!DOCTYPE html PUBLIC "-/W3C/DTD HTML 4.01 Transitional/EN" "ht ...

  7. iframe调用父页面各种方法

    HTML: <body>    <form id="form1" runat="server">       <div> & ...

  8. layer.open({}) 子页面传参并调用父页面的方法

    闲话少说先看效果!!! 说明适用场景:在a.jsp页面,点击查看一个文件,layer.open弹出b.jsp页面,在b.jsp页面可以修改文件的名称(其实是去改了数据库),但是关闭弹窗的后,要求不刷新 ...

  9. 实现 iframe 子页面调用父页面中的js方法

    父页面:index.html(使用iframe包含子页面child.html) [xhtml] view plaincopyprint? <html> <head> <s ...

随机推荐

  1. pycharm鼠标更改字体大小

    Pycharm快捷键设置(鼠标滚动控制字体大小) 一.pycharm字体放大的设置 File -> setting -> Keymap ->在搜寻框中输入:increase -> ...

  2. HDU 6170 - Two strings | 2017 ZJUT Multi-University Training 9

    /* HDU 6170 - Two strings [ DP ] | 2017 ZJUT Multi-University Training 9 题意: 定义*可以匹配任意长度,.可以匹配任意字符,问 ...

  3. 使用jQuery快速高效制作网页交互特效---jQuery选择器

    一.什么是jQuery选择器 Query选择器继承了CSS与Path语言的部分语法,允许通过标签名.属性名或内容对DOM元素进行快速.准确的选择, 而不必担心浏览器的兼容性,通过jQuery选择器对页 ...

  4. HTML div块内剧中

    在HTML中有一个块内元素剧中的方法   那就是margin:0 auto; 剧中前 剧中后

  5. 百度UE编辑器从word粘贴公式

    图片的复制无非有两种方法,一种是图片直接上传到服务器,另外一种转换成二进制流的base64码 目前限chrome浏览器使用,但是项目要求需要支持所有的浏览器,包括Windows和macOS系统.没有办 ...

  6. P3066 [USACO12DEC] 逃跑的Barn 左偏树

    P3066 逃跑的Barn 左偏树 题面 题意:给出以1号点为根的一棵有根树,问每个点的子树中与它距离小于等于l的点有多少个. 注意到答案的两个性质: 一个点的所有答案一定包含在其所有儿子的答案中 如 ...

  7. scrapy 分布式爬虫- RedisSpider

    爬去当当书籍信息 多台机器同时爬取,共用一个redis记录 scrapy_redis 带爬取的request对象储存在redis中,每台机器读取request对象并删除记录,经行爬取.实现分布式爬虫 ...

  8. 1827:【01NOIP提高组】Car的旅行路线

    哇这些真题终于正经起来奥 刚看这道题很不自信觉得自己肯定不能建图成功甚至想过用贪心.. 后来一想发现建图还是蛮容易的,AI我是真的蠢 话说一本通真的很坑啊,把原题的保留1位改成了2 我把在洛谷AC的代 ...

  9. Java中BigDecimal的equals与compareTo的区别

          有个是否为零的判断[BigDecimal.ZERO.equals(ratio)]我用了BigDecimal的equals方法,结果,判断失败,因此特地分析一下equals与compareT ...

  10. MySQL 5.7:聊聊sql_mode

    1.sql_mode=only_full_group_by 导致的语法错误问题 MySQLSyntaxErrorException Caused by: com.mysql.jdbc.exceptio ...