.NET后台访问其他站点代码整理
HttpWebRequest request = WebRequest.Create(@"http://localhost:8080/mail/SendMail") as HttpWebRequest;
request.Method = "post";
User user = (User)Session["CurrentUser"];
// 拼接成请求参数串,并进行编码,成为字节
string postData = "send=" + send + "©=" + copy + "&secret=" + secret + "&subject=" + HttpUtility.UrlEncode(this.txtTopic.Text, Encoding.GetEncoding("GBK")) + "&username=" + user.Email + "&pass=" + user.MailPwd + "&content=" + HttpUtility.UrlEncode(this.ftbContent.Text, Encoding.GetEncoding("GBK"));
ASCIIEncoding encoding = new ASCIIEncoding();
byte[] byte1 = encoding.GetBytes(postData);
// 设置请求的参数形式
request.ContentType = "application/x-www-form-urlencoded";
request.Headers.Add("content", "text/html; charset=gbk");
// 设置请求参数的长度.
request.ContentLength = byte1.Length;
// 取得发向服务器的流
System.IO.Stream newStream = request.GetRequestStream();
// 使用 POST 方法请求的时候,实际的参数通过请求的 Body 部分以流的形式传送
newStream.Write(byte1, , byte1.Length);
// 完成后,关闭请求流.
newStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
// 然后可以得到以流的形式表示的回应内容
System.IO.Stream receiveStream
= response.GetResponseStream();
// 还可以将字节流包装为高级的字符流,以便于读取文本内容
// 需要注意编码
System.IO.StreamReader readStream
= new System.IO.StreamReader(receiveStream, Encoding.GetEncoding("GB2312"));
string res = readStream.ReadToEnd();
// 完成后要关闭字符流,字符流底层的字节流将会自动关闭
response.Close();
readStream.Close();
HttpWebRequest req = HttpWebRequest.Create(@"http://localhost:8080/mail/getmail.jsp") as HttpWebRequest;
req.Method = "post";
User user = (User)Session["CurrentUser"];
// 拼接成请求参数串,并进行编码,成为字节
string postData = "page=" + PageNor + "&username=" + user.Email + "&pass=" + user.MailPwd;
ASCIIEncoding encoding = new ASCIIEncoding();
byte[] byte1 = encoding.GetBytes(postData);
// 设置请求的参数形式
req.ContentType = "application/x-www-form-urlencoded";
// 设置请求参数的长度.
req.ContentLength = byte1.Length;
// 取得发向服务器的流
System.IO.Stream newStream = req.GetRequestStream();
// 使用 POST 方法请求的时候,实际的参数通过请求的 Body 部分以流的形式传送
newStream.Write(byte1, , byte1.Length);
// 完成后,关闭请求流.
newStream.Close();
HttpWebResponse response = (HttpWebResponse)req.GetResponse();
// 然后可以得到以流的形式表示的回应内容
System.IO.Stream receiveStream
= response.GetResponseStream();
// 还可以将字节流包装为高级的字符流,以便于读取文本内容
// 需要注意编码
System.IO.StreamReader readStream
= new System.IO.StreamReader(receiveStream, Encoding.GetEncoding("GB2312"));
string res = readStream.ReadToEnd();
// 完成后要关闭字符流,字符流底层的字节流将会自动关闭
response.Close();
readStream.Close();
if (!res.Equals(""))
{
DataTable dt = new DataTable();
dt.Columns.Add("id");
dt.Columns.Add("subject");
dt.Columns.Add("sender");
dt.Columns.Add("date");
string[] ss = res.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
foreach (string s in ss)
{
DataRow dr = dt.NewRow();
string[] str = s.Split(new char[] { '&' }, StringSplitOptions.RemoveEmptyEntries);
dr["id"] = str[];
dr["subject"] = str[];
dr["sender"] = str[];
dr["date"] = DateTime.Parse(str[]);
dt.Rows.Add(dr);
}
int totalCount = ;
User curUser = (User)Session["CurrentUser"];
int isDelete = ;
DataTable dt1 = SendProcessManager.GetSendAffairsByProc(curUser.ID, isDelete, PageNor, CommonInfo.PageSize, ref totalCount);
if (totalCount > && dt != null && dt.Rows.Count == )
{
PageNor--;
dt1 = SendProcessManager.GetSendAffairsByProc(curUser.ID, isDelete, PageNor, CommonInfo.PageSize, ref totalCount);
}
List<MessageModel> list = new List<MessageModel>();
foreach (DataRow dr in dt.Rows)
{
MessageModel mm = new MessageModel();
mm.Id = dr["id"].ToString();
mm.Subject = dr["subject"].ToString();
mm.Sender = dr["sender"].ToString();
mm.Date = DateTime.Parse(dr["date"].ToString());
mm.Status = "";
list.Add(mm);
}
foreach (DataRow dr in dt1.Rows)
{
MessageModel mm = new MessageModel();
mm.Id = dr["INFOID"].ToString();
mm.CurLevel = dr["CurLevel"].ToString();
mm.UesrID = dr["UserID"].ToString();
mm.Date = DateTime.Parse(dr["SENDTIME"].ToString());
mm.Subject = dr["Topic"].ToString();
mm.AnnexCount = dr["AnnexCount"].ToString();
mm.ReadStatus = dr["ReadStatus"].ToString();
mm.Position = dr["Position"].ToString();
mm.Sender = dr["UserName"].ToString();
mm.RelateUserID = dr["RelateUserID"].ToString();
mm.InfoTableType = dr["InfoTableType"].ToString();
mm.Level = dr["Level"].ToString();
mm.Status = "";
list.Add(mm);
}
var m = from l in list orderby l.Date descending select l;
this.gvAffairs.DataSource = m;
this.gvAffairs.DataBind();
HttpWebRequest request = WebRequest.Create(@"http://localhost:8080/mail/maildetail.jsp") as HttpWebRequest;
request.Method = "post";
// 拼接成请求参数串,并进行编码,成为字节
string postData = "id=" + this.hfAffairId.Value + "&username=" + this.username + "&pass=" + this.pass;
ASCIIEncoding encoding = new ASCIIEncoding();
byte[] byte1 = encoding.GetBytes(postData);
// 设置请求的参数形式
request.ContentType = "application/x-www-form-urlencoded";
// 设置请求参数的长度.
request.ContentLength = byte1.Length;
// 取得发向服务器的流
System.IO.Stream newStream = request.GetRequestStream();
// 使用 POST 方法请求的时候,实际的参数通过请求的 Body 部分以流的形式传送
newStream.Write(byte1, , byte1.Length);
// 完成后,关闭请求流.
newStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
// 然后可以得到以流的形式表示的回应内容
System.IO.Stream receiveStream
= response.GetResponseStream();
// 还可以将字节流包装为高级的字符流,以便于读取文本内容
// 需要注意编码
System.IO.StreamReader readStream
= new System.IO.StreamReader(receiveStream, Encoding.GetEncoding("GB2312"));
string res = readStream.ReadToEnd();
// 完成后要关闭字符流,字符流底层的字节流将会自动关闭
response.Close();
readStream.Close();
string[] ss = res.Split(new string[] { "&#@" }, StringSplitOptions.RemoveEmptyEntries);
this.hfAffairId.Value = ss[];
this.lblTopic.Text = ss[];
this.lblContents.Text = ss[];
this.lblCreateUser.Text = ss[];
this.lblBeginAffairTime.Text = DateTime.Parse(ss[]).ToString("yyyy-MM-dd HH:mm:ss");
this.flowTr.Style.Add("display", "none");
this.sendTr.Style.Add("display", "");
this.lblSend.Text = ((User)Session["CurrentUser"]).Email;
.NET后台访问其他站点代码整理的更多相关文章
- Part 2:模型与后台管理admin站点--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- HTTP请求代码整理
HTTP请求代码整理 类别 代码 注释 1xx – 信息提示 100 继续 101 切换协议 2xx - 成功 200 确定.客户端请求已成功 201 已创建 202 已接受 203 非权威性信息 2 ...
- 移动端访问PC站点时自动跳转至移动站点
方法一: 百度Site APP的uaredirect.js 实现手机访问,自动跳转 <script src="http://siteapp.baidu.com/static/webap ...
- YbSoftwareFactory 代码生成插件【二十五】:Razor视图中以全局方式调用后台方法输出页面代码的三种方法
上一篇介绍了 MVC中实现动态自定义路由 的实现,本篇将介绍Razor视图中以全局方式调用后台方法输出页面代码的三种方法. 框架最新的升级实现了一个页面部件功能,其实就是通过后台方法查询数据库内容,把 ...
- Chrome应用技巧之代码整理。
我们有时候在看别人站点代码时往往是经过压缩的,代码都在一行上了,调试非常是困难,今天给大家介绍一种基本Chrome浏览器的代码整理方法.请看图:
- node.js简单搭建服务,访问本地站点文件
1.安装nodejs服务(从官网下载安装),node相当于apache服务器 2.在自己定义的目录下新建服务器文件如 server.js 例如,我在D:\nodeJs下创建了server.js文件 v ...
- C++模拟Http/Https访问web站点
一.概述 1.Http与Https的区别与联系 在OSI参考模型中Http与Https均属于应用层协议.Http即Hypertext Transfer Protocol,超文本传输协议:而Https为 ...
- ACME[free https] Linux中使用curl命令访问https站点4种常见错误和解决方法
free https certification generator https://github.com/Neilpang/acme.sh/wiki/%E8%AF%B4%E6%98%8E 每一种客户 ...
- 搭建nodejs服务,访问本地站点文件
搭建nodejs服务器步骤: 1.安装nodejs服务(从官网下载安装) 2.在自己定义的目录下新建服务器文件如 server.js 例如,我在E:\PhpProject\html5\websocke ...
随机推荐
- 2012NOIP模拟试题
做的时候觉得这套题好简单,结果一看发现是2012年的模拟题,估计就是普及+的难度吧,AK无压力 总结 第一题状压我智障的调了好几分钟,因为我的最终状态写的1<<n,智障了 第三题的dfs调 ...
- SPOJ—VLATTICE Visible Lattice Points(莫比乌斯反演)
http://www.spoj.com/problems/VLATTICE/en/ 题意: 给一个长度为N的正方形,从(0,0,0)能看到多少个点. 思路:这道题其实和能量采集是差不多的,只不过从二维 ...
- Intel Caffe 与原生Caffe
1. 首先安装好docker,拉取intel caffe image: $ docker pull bvlc/caffe:intel 试着运行: $ docker run -it bvlc/caff ...
- 【安全测试】安全测试威胁建模设计方法STRIDE
背景 目前安全测试一般都存在如下问题: 安全测试人员不懂业务,业务测试人员不懂安全,安全测试设计出现遗漏是无法避免的 安全测试点繁多复杂,单点分析会导致风险暴露,不安全 目前的状态: TR2阶段测试人 ...
- nodejs使用multiparty模块实现文件上传(另附express.bodyParser()的说明)
最近师弟师妹们在用formidable做文件上传的时候会出现form.parse()不会触发的问题,在stackoverflow也没有找到答案,反而是几个答案推荐使用multiparty来代替,因为那 ...
- devdocs
https://devdocs.io/ docker run --rm -d --name devdocs -p 9292:9292 devdocs/devdocs
- Java线程状态分析
Java线程的生命周期中,存在几种状态.在Thread类里有一个枚举类型State,定义了线程的几种状态,分别有: NEW: 线程创建之后,但是还没有启动(not yet started).这时候它的 ...
- HDU1598 并查集+贪心
find the most comfortable road Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K ...
- 牛客网——F小牛再战(博弈,不懂)
链接:https://www.nowcoder.net/acm/contest/75/F来源:牛客网 题目描述 共有N堆石子,已知每堆中石子的数量,两个人轮流取石子,每次只能选择N堆石子中的一堆取一定 ...
- 唯一索引 && 主键索引
唯一索引唯一索引不允许两行具有相同的索引值. 如果现有数据中存在重复的键值,则大多数数据库都不允许将新创建的唯一索引与表一起保存. 当新数据将使表中的键值重复时,数据库也拒绝接受此数据.例如,如果在 ...