C#后台进行Http请求

1.Get请求
新建一个webform项目,添加一个按钮,定义click事件
protected void Button1_Click(object sender, EventArgs e)
{
string url = "https://www.baidu.com/";
var request = HttpWebRequest.Create(url);
request.Method = "GET";
request.BeginGetResponse(ResponseCallBack,request);//发起异步响应式请求,提供一个回调函数和实例本身
}
private void ResponseCallBack(IAsyncResult result)//回调函数
{
HttpWebRequest httpWebRequest = (HttpWebRequest)result.AsyncState;//获取请求数据
WebResponse webResponse = httpWebRequest.EndGetResponse(result);//结束异步的响应
using (Stream stream = webResponse.GetResponseStream())
{
using (StreamReader reader = new StreamReader(stream))
{
string content = reader.ReadToEnd();//这里就是百度对应的页面Html代码
}
}
}
2.Post请求
比起Get请求,多了3、4、5三步,
protected void Button2_Click(object sender, EventArgs e)
{
string url = "https://www.cnblogs.com/";
var request = HttpWebRequest.Create(url);
request.Method = "POST";
request.BeginGetRequestStream(RequestStreamCallBack,request);//发起获取数据流请求
}
private void RequestStreamCallBack(IAsyncResult result)//比Get多了个载入参数的环节
{
HttpWebRequest httpWebRequest=(HttpWebRequest)result.AsyncState;//获取请求流数据
Stream stream = httpWebRequest.EndGetRequestStream(result);//结束异步的数据流请求
string param = "postdata"; //定义Post参数
byte[] data = Encoding.UTF8.GetBytes(param);//把参数转化为字节
stream.Write(data, , data.Length);//写入数据
stream.Close();
httpWebRequest.BeginGetResponse(ResponseCallBack, httpWebRequest);
}
private void ResponseCallBack(IAsyncResult result)//回调函数,和GET一样
{
HttpWebRequest httpWebRequest = (HttpWebRequest)result.AsyncState;
WebResponse webResponse = httpWebRequest.EndGetResponse(result);
using (Stream stream = webResponse.GetResponseStream())
{
using (StreamReader reader = new StreamReader(stream))
{
string content = reader.ReadToEnd();
}
}
}
C#后台进行Http请求的更多相关文章
- C# 动态创建SQL数据库(二) 在.net core web项目中生成二维码 后台Post/Get 请求接口 方式 WebForm 页面ajax 请求后台页面 方法 实现输入框小数多 自动进位展示,编辑时实际值不变 快速掌握Gif动态图实现代码 C#处理和对接HTTP接口请求
C# 动态创建SQL数据库(二) 使用Entity Framework 创建数据库与表 前面文章有说到使用SQL语句动态创建数据库与数据表,这次直接使用Entriy Framwork 的ORM对象关 ...
- 后台curl网络请求
<?php //前端进行网络请求 ajax //后台进行网络请求用到两种方式 curl socket //进行网络请求的步骤 //1.初始化一个curl //2.对curl进行配置 // ...
- 腾讯云图片鉴黄集成到C# SQL Server 怎么在分页获取数据的同时获取到总记录数 sqlserver 操作数据表语句模板 .NET MVC后台发送post请求 百度api查询多个地址的经纬度的问题 try{}里有一个 return 语句,那么紧跟在这个 try 后的 finally {}里的 code 会 不会被执行,什么时候被执行,在 return 前还是后? js获取某个日期
腾讯云图片鉴黄集成到C# 官方文档:https://cloud.tencent.com/document/product/641/12422 请求官方API及签名的生成代码如下: public c ...
- 后台发送http请求通用方法,包括get和post
package com.examsafety.service.sh; import java.io.BufferedReader; import java.io.IOException; import ...
- Django(十二)视图--利用jquery从后台发送ajax请求并处理、ajax登录案例
一.Ajax基本概念 [参考]:https://www.runoob.com/jquery/jquery-ajax-intro.html 异步的javascript.在不全部加载某一个页面部的情况下, ...
- C#后台发送HTTP请求
using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using Syst ...
- asp.net后台发送HTTP请求
一.文件流方式(转自:http://blog.csdn.net/u011511086/article/details/53216330) /// 发送请求 /// </summary> / ...
- 后台发送get请求
第一步:编写Controller,让后台去请求接口 package controller; import java.util.List; import org.springframework.bean ...
- vue模拟后台数据,请求本地数据的配置(旧版本dev-server.js,新版本webpack.dev.conf.js)
最近学习一个vue-cli的项目,需要与后台进行数据交互,这里使用本地json数据来模仿后台数据交互流程.然而发现build文件夹下没有dev-server.js文件了,因为新版本的vue-webpa ...
- C# 后台处理http请求
using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using Syst ...
随机推荐
- spring cron表达式(定时器)
转: spring cron表达式(定时器) 写定时器时用到,记录一下: Cron表达式是一个字符串,字符串以5或6个空格隔开,分开工6或7个域,每一个域代表一个含义,Cron有如下两种语法 格式: ...
- 苹果电脑利用wget总是会出现无法建立 SSL 连接的问题
在做迁徙学习的过程中,需要下载已经训练好的Inception_v3模型,首先我们为了将下载的模型保存到指定的地方,我们需要利用 wget -P 想要保存的目录 模型的网址,例如 wget -P /Vo ...
- 计算机基础:计算机网络-socket编程
来源:mooc大学华南理工大学计算机网络课程 chapter6 代码:https://github.com/NeilKeats/SocketDemo/commit/5f3a795250a9533910 ...
- POJ 3522 Slim Span(极差最小生成树)
Slim Span Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 9546 Accepted: 5076 Descrip ...
- 字符输入流 FileReader
package cn.lideng.demo3; import java.io.FileNotFoundException; import java.io.FileReader; public cla ...
- div设置overflow-scroll滚动之后,jq获取其子元素的offset.top出现问题。
先上个图: 布局很简单,左右超过屏幕的部分自行滚动. 1. html <div class="ce-container"> <div class="ce ...
- u-boot(四)命令实现
目录 u-boot(四)命令实现 分析run_command 小结 自定义一个命令 代码 makefile title: u-boot(四)命令实现 tags: linux date: 2018-09 ...
- Centos7使用kubeadm 安装多主高可用kubernets:v.1.11集群
实验环境介绍: 本次实验环境是5个节点 3台master 2台node节点: k8smaster01 192.168.111.128 软件:etcd k8smaster haproxy keepali ...
- Java Web之HTML5
终于学到Java Web这一章节了,首先来了解一下HTML5的一些新知识点吧,我直接贴出HTML5代码看一下: <!DOCTYPE html> <html lang="en ...
- linux安装Subversion版本控制工具(Subversion + Apache + jsvnadmin)
操作系统:Centos 6.7 集成环境服务器:10.0.210.112 操作用户:root 建议安装前更新操作系统 # yum update 更新完成后重启 # reboot 1: 安装 Apach ...