.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 ...
随机推荐
- MSBI
https://blog.csdn.net/fanyingnedu/article/details/78597207 Familiarity with Microsoft BI Stack - SSI ...
- Codeforces Round #390 (Div. 2) A. Lesha and array splitting
http://codeforces.com/contest/754/problem/A 题意: 给出一串序列,现在要把这串序列分成多个序列,使得每一个序列的sum都不为0. 思路: 先统计一下不为0的 ...
- mygene 3.0.0
MyGene.Info provides simple-to-use REST web services to query/retrieve gene annotation data. It’s de ...
- IIS 7.5 配置 php 5.4.22 链接 sql 2008(用PDO链接数据库)
最近在接触PHP这块,关于在wndows系统下的php配置,虽然网上已经很多文章,但有时候有些配置找起也麻烦,所以分享给大家. 一.php 5.4.22 下载地址 http://windows.php ...
- 总结关于express vue-cli
零零散散,拼起来,花了不少时间,这回把一些东西拼一下吧,免得到时又得重头开始,Blog还没弄好,打算用这些重新写一个,稍接不上,就落后了,这是技术,技术是不断更新换代的,明天这个框架,可以后天就有一个 ...
- Angular i18n
Angular2中使用ngx-translate进行国际化http://blog.csdn.net/u014291497/article/details/61233033 在 Angular 项目中添 ...
- iptable filter nat MASQUERADE snat dat
在这里,系统会根据IP数据包中的destination ip address中的IP地址对数据包进行分发.如果destination ip adress是本机地址,数据将会被转交给INPUT链.如果不 ...
- L204
Riding a bike is good exercise and great fun. But what do you do with a bike after you outgrow it? N ...
- 错误 1 类,结构或接口成员声明中的标记"="无效
using System;using System.Collections.Generic;using System.Linq;using System.Text; namespace Console ...
- 第24课 #pragma使用分析
#pragma是C语言留给编译器厂商进行扩展用的. 这个关键字在不同的编译器之间也许是不能够移植的. #pragma简介 #pragma message #pragma message打印的消息并不代 ...