C#使用GET、POST请求获取结果,这里以一个简单的用户登陆为例。

1、 使用GET请求获取结果

1.1 创建LoginHandler.aspx处理页面

  1. protected void Page_Load(object sender, EventArgs e)
  2. {
  3. string result = "";
  4. string userName = Request.QueryString["UserName"];
  5. string password = Request.QueryString["Password"];
  6. if (userName == "admin" && password == "123")
  7. {
  8. result = "登陆成功";
  9. }
  10. else
  11. {
  12. result = "登陆失败";
  13. }
  14. Response.Write(result);
  15. }

1.2 编写GET请求与获取结果方法

  1. /// <summary>
  2. /// GET请求与获取结果
  3. /// </summary>
  4. public static string HttpGet(string Url, string postDataStr)
  5. {
  6. HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url + (postDataStr == "" ? "" : "?") + postDataStr);
  7. request.Method = "GET";
  8. request.ContentType = "text/html;charset=UTF-8";
  9. HttpWebResponse response = (HttpWebResponse)request.GetResponse();
  10. Stream myResponseStream = response.GetResponseStream();
  11. StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8);
  12. string retString = myStreamReader.ReadToEnd();
  13. myStreamReader.Close();
  14. myResponseStream.Close();
  15. return retString;
  16. }

1.3 调用测试

  1. static void Main(string[] args)
  2. {
  3. string url = "http://www.mystudy.cn/LoginHandler.aspx";
  4. string data = "UserName=admin&Password=123";
  5. string result = HttpGet(url, data);
  6. Console.WriteLine(result);
  7. Console.ReadLine();
  8. }

2、 使用POST请求获取结果

2.1 创建LoginHandler.aspx处理页面

  1. protected void Page_Load(object sender, EventArgs e)
  2. {
  3. string result = "";
  4. string userName = Request.Form["UserName"];
  5. string password = Request.Form["Password"];
  6. if (userName == "admin" && password == "123")
  7. {
  8. result = "登陆成功";
  9. }
  10. else
  11. {
  12. result = "登陆失败";
  13. }
  14. Response.Write(result);
  15. }

2.2 编写POST请求与获取结果方法

  1. /// <summary>
  2. /// POST请求与获取结果
  3. /// </summary>
  4. public static string HttpPost(string Url, string postDataStr)
  5. {
  6. HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
  7. request.Method = "POST";
  8. request.ContentType = "application/x-www-form-urlencoded";
  9. request.ContentLength = postDataStr.Length;
  10. StreamWriter writer = new StreamWriter(request.GetRequestStream(),Encoding.ASCII);
  11. writer.Write(postDataStr);
  12. writer.Flush();
  13. HttpWebResponse response = (HttpWebResponse)request.GetResponse();
  14. string encoding = response.ContentEncoding;
  15. if (encoding == null || encoding.Length < 1) {
  16. encoding = "UTF-8"; //默认编码
  17. }
  18. StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(encoding));
  19. string retString = reader.ReadToEnd();
  20. return retString;
  21. }

2.3 调用测试

  1. static void Main(string[] args)
  2. {
  3. string url = "http://www.mystudy.cn/LoginHandler.aspx";
  4. string data = "UserName=admin&Password=123";
  5. string result = HttpPost(url, data);
  6. Console.WriteLine(result);
  7. Console.ReadLine();
  8. }

C#使用GET、POST请求获取结果的更多相关文章

  1. ajax请求获取的数据无法赋值给全局变量问题总结

    一.总结: 1.问题描述: 今天做项目遇到在用表单显示详细信息的过程中ajax请求获取的数据无法赋值给全局变量的情况,从列表页面进入详情页,在详情页面被渲染了之后就会调用js文件里的接口向服务器请求数 ...

  2. 向.net后端发送请求获取数据,在前端动态填充表格

    实现效果 实现步骤 通过Ajax请求的方式 1.在前端定义Table 2.通过Ajax向.net后端发送数据请求 3.在.net后端定义方法供前端调用,并返回所需的数据 4.通过构造字符串的方式,将后 ...

  3. 微信接口开发1--向微信发送请求--获取access_token

    //随便放置一个php文件在服务器上.执行该方法--调用模拟get提交---到微信-->获得微信返回的access_token 不建议自己编写模拟get提交方法. 建议直接导入微信框架LaneW ...

  4. wemall app商城源码中基于JAVA通过Http请求获取json字符串的代码

    wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.分享其中关于通过Http请求获取json字符串的代码供 ...

  5. PHP/Post 提交请求获取json数据,并转化为所需要的数组

    /** * Post 提交请求获取json数据,并转化为所需要的数组 */ function request_post($url = '', $param = '') { if (empty($url ...

  6. C#使用GET、POST请求获取结果,这里以一个简单的用户登陆为例。

    1. 使用GET请求获取结果 1.1 创建LoginHandler.aspx处理页面 protected void Page_Load(object sender, EventArgs e) { st ...

  7. 模拟HTTP请求获取返回值

    package org.jeecgframework.core.util; import java.io.BufferedReader; import java.io.IOException; imp ...

  8. koa通过get请求获取参数

    1.通过get方式请求获取参数的方式有两种 通过上下文获取 通过request获取 获得的格式有两种:query与querystring 注意:querystring为小写,驼峰格式会导致无法获取 2 ...

  9. Django学习笔记第二篇--关于请求获取

    #细节都在代码段里面讲解 零.绪论: HTTP协议是一种请求响应的协议,一次请求一次响应.所以这部分的讲解将分为三个部分:请求获取,分析处理.返回响应. 一.获取请求数据: 1.POST和GET类型 ...

随机推荐

  1. Java多线程基础学习(二)

    9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...

  2. opencv源码:cascadedetect

    级联分类器检测类CascadeClassifier,提供了两个重要的方法: CascadeClassifier cascade_classifier; cascade_classifier.load( ...

  3. C++中的命名空间

    一,命名空间(namespace)的基本概念以及由来 1.什么是标识符: 在C++中,标识符可以是基本的变量,类,对象,结构体,函数,枚举,宏等. 2.什么是命名空间: 所谓的命名空间是指标识符的可见 ...

  4. C#多线程之线程同步篇2

    在上一篇C#多线程之线程同步篇1中,我们主要学习了执行基本的原子操作.使用Mutex构造以及SemaphoreSlim构造,在这一篇中我们主要学习如何使用AutoResetEvent构造.Manual ...

  5. kafka配置与使用实例

    kafka作为消息队列,在与netty.多线程配合使用时,可以达到高效的消息队列

  6. 来自于微信小程序的一封简讯

    9月21晚间,微信向部分公众号发出公众平台-微信应用号(小程序)的内测邀请,向来较为低调的微信在这一晚没人再忽视它了. 来自个人博客:Damonare的个人博客 一夜之间火了的微信应用号你真的知道吗? ...

  7. java.lang.NoSuchFieldError: org.apache.http.message.BasicLineFormatter.INSTANCE

    Android发出HTTP请求时出现了这个错误: java.lang.NoSuchFieldError: org.apache.http.message.BasicLineFormatter.INST ...

  8. docker – 你应该知道的10件事

      容器并不是一个全新的技术,但这并不妨碍Docker如风暴一样席卷整个世界. 如果你在IT圈里,你一定听说过Docker.就算与其他热门技术,如:Puppet/Chef,Hadoop或者MongoD ...

  9. Mysql - 查询之关联查询

    查询这块是重中之重, 关系到系统反应时间. 项目做到后期, 都是要做性能测试和性能优化的, 优化的时候, 数据库这块是一个大头. sql格式: select 列名/* from 表名 where 条件 ...

  10. Ubuntu下利用Mono,Jexus搭建Asp.Net(MVC) Web服务器

    最近在Ubuntu上搭建了Asp.Net的Web服务器,其中遇到很多问题,整理一下思路,以备后用. 搭建环境以及配套软件 Ubuntu: 11.10 Mono:3.0.6 下载地址(http://do ...