.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 ...
随机推荐
- 【bzoj5170】Fable(树状数组)
题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=5170 我们会发现,经过一轮冒泡后,若a[i]的前面有比它大的数,就一定会有一个被丢到后 ...
- 利用IntelliJ IDEA创建第一个Groovy工程
因为某些原因,需要学习一下Groovy.关于Groovy的入门教程请看这篇文章http://www.ibm.com/developerworks/cn/education/java/j-groovy/ ...
- c++ 插入容器元素(insert)
#include <iostream> #include <vector> using namespace std; int main () { vector<int&g ...
- redis持久化策略
redis是内存数据库,它把数据存储在内存中,这样在加快读取速度的同时也对数据安全性产生了新的问题,即当redis所在服务器发生宕机后,redis数据库里的所有数据将会全部丢失. 为了解决这个问题,r ...
- VNC Viewer连接Cent OS 时的 复制粘帖 功能
虽然 VNC Viewer 比起 vsphere Client 来, 感觉性能差一点. 但毕竟也是个选择. 找了一下 它的这个 功能. 运行一下 vncconfig & 就可以了. 实测好用. ...
- ContentNegotiatingViewResolver多种输出格式实例: json/jsp/xml/xls/pdf
ContentNegotiatingViewResolver多种输出格式实例: json/jsp/xml/xls/pdf 本例用的是javaConfig配置 以pizza为例. json输出需要用到的 ...
- (GoRails) Credential
之前的博客:https://www.cnblogs.com/chentianwei/p/9167489.html Guide: https://guides.rubyonrails.org/secu ...
- C++ lower_bound 和upper_bound
二分查找的函数有 3 个: 1.lower_bound(起始地址,结束地址,要查找的数值) 返回的是数值 第一个 出现的位置. 2.upper_bound(起始地址,结束地址,要查找的数值) 返回的是 ...
- 记一次生产环境axis2服务特别慢的问题。
情况如下: 某服务,在测试环境测试的时候整个响应过程也就0.5s左右,测试环境和生产环境axis2版本一致,tomcat版本一致,但是生产环境需要差不多20S. 后来,越来越慢,导致服务一起来,整个生 ...
- MAP 最大后验——利用经验数据获得对未观测量的点态估计
Map (最大后验) 在贝叶斯统计学中,最大后验(Maximum A Posteriori,MAP)估计可以利用经验数据获得对未观测量的点态估计.它与Fisher的最大似然估计(Maximum Lik ...