asp.net 8 Request,Response,Server
Request成员:
1.Request.UrlReferrer 获取请求的来源,可以防盗链
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
2.Request.UserHostAddress 获取访问者的IP地址
Response.Write(Request.UserHostAddress.ToString());
3.Request.Cookies[""];//读取Cookies
Response.Cookies[""];//将Cookies写回浏览器
4.Request.MapPath("");将虚拟路径转换为磁盘上的物理路径
Response成员:
响应的缓冲输出:为了提高服务器的性能,ASP.NET向浏览器Write的时候默认并不会
每Write一次都会立即输出到浏览器,而是会缓存数据,到合适的时机或者响应结束才会将
缓冲区中的数据一起发送到浏览器。
1.Response.Buffer; 这个属性用来控制是否采用响应缓冲,默认是true!
Response.BufferOutput; --Buffer内部调用的就是BufferOutput
Response.Buffer = false;//设置了没有响应缓冲区,碰到一次Response.Write就输出一次
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
Response.Write("<hr />");
2.Response.Flush() 将缓冲区中的数据发送给浏览器。这在需要将Write出来的内容立即输出到浏览器的场合非常适用。
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.Flush();//将前两条Response.Write立即向浏览器输出
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
Response.Write("<hr />");
3.Response.Clear() 清空缓冲区的数据。这样在缓冲区中的没有发送到浏览器端的数据被清空,不会被发送到浏览器。
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.Clear();//清空缓冲区的数据,将上面两条Response.write清除!
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
Response.Write("<hr />");
4.Response.ContentEncoding 输出流的编码
5.Response.ContentType 输出流的内容类型
6.Response.Cookies 返回给浏览器的Cookie的集合,可以通过它设置Cookie
7.Response.OutputStream 输出流,在输出图片,excel文件等非文本内容的时候要使用它
8.Response.End() 终止响应,将之前缓存中的数据发给浏览器,End()之后的代码不会被继续执行,End方法里调用了Flush()方法。
在终止一些非法请求的时候,比如盗链等可以用End()立即终止请求
Response.Write(Request.Url.ToString());//获取当前请求的URL地址
Response.Write("<hr />");
Response.End();//后面的代码不会被执行
Response.Write(Request.UrlReferrer.ToString());//获取请求的来源 //防盗链
Response.Write("<hr />");
9.Response.Redirect() 重定向浏览器到新的网址。(即可以重定向到站外网址也可以重定向到站内地址)。Redirect是向浏览器发回302重定向(还有一个Location告诉浏览器要重定向到哪个页面),是通知浏览器“请重新访问url这个网址”,这个过程经历了服务器通知浏览器“请重新访问url这个网址”和浏览器接到命令访问新网址的过程。
10.Response.SetCookie(HttpCookie cookie) 向输出流中更新写到浏览器中的Cookie,如果Cookie存在就更新,不存在就增加。
11.Response.Write() 向浏览器输出内容。
Server对象
Server属性是HttpServerUtility的一个实例,它提供对服务器上的方法和属性的访问
1.Server.MapPath 取得文件的物理路径
2.Server.Execute(); Server.Transfer() 执行另一个页面的脚本
Server.Execute()类似于iframe(iframe不利于SEO优化,因为蜘蛛爬虫不识别iframe,考虑SEO优化,使用Server.Execute!)
Server.Transfer() 服务端的跳转
**白帽SEO......黑帽SEO......
**注释的优化,采用服务端的注释,html的注释会被传输~~~
3.Server.HtmlDecode();Server.HtmlEncode(); 将稳步编码成可以在浏览器中可正确浏览的合适
Server.HtmlEncode():
<%=Server.HtmlEncode("<a href='#'>111</a>") %>

<a href='#'>111</a>
Server.HtmlDecode():
<%=Server.HtmlDecode("<a href='#'>111</a>") %>
页面显示一个111的超链接
4.Server.UrlDecode;Server.UrlEncode Url编码和解码
*** 通过Url地址传参如果出现乱码问题,先用 Server.UrlEncode编码一下,然后接受参数的时候再 Server.UrlDecode解码~~
asp.net 8 Request,Response,Server的更多相关文章
- ASP.NET之Request和Response对象
经过了牛腩新闻公布系统和html的学习对B/S开发的流程有了些理解.前面尽管用到了非常多知识.但对制作网页仅仅能说知其然.当学到asp.net视频中的解说才干够说開始知其所以然了. 今天来说说clie ...
- Server,Servlet,ServletConfig,ServletContext,Session,Request,Response
Server流程 解析URL->找到应用->找到Servlet->实例化Servlet->调用init->调用service->返回响应->调用destroy ...
- response.sendRedirect(url)与request.getRequestDispatcher(url).forward(request,response)的区别
response.sendRedirect(url)跳转到指定的URL地址,产生一个新的request,所以要传递参数只有在url后加参数,如: url?id=1.request.getRequest ...
- ASP入门(十三)-Server对象
Server 对象用于处理服务器上的一些特殊任务,例如,创建组件实例.获取文件路径.执行ASP脚本文件等. Server 对象是体现 ASP 强大功能的一个对象,之前介绍的对象都是针对获取.请求以及简 ...
- ASP调用存储过程访问SQL Server
ASP调用存储过程访问SQL Server 2011-02-15 10:22:57 标签:asp 数据库 sQL 存储过程 Server ASP和存储过程(Stored Procedures)的文章 ...
- track message forwards, avoiding request loops, and identifying the protocol capabilities of all senders along the request/response chain
https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html The TRACE method is used to invoke a remote, ...
- ZeroMQ之Request/Response (Java)
自己最开始是在cloud foundry中接触过消息服务器(nats),或者说是消息中间件,也算是初步知道了一个消息服务器对于分布式的网络系统的重要性,后来自己也曾想过在一些项目中使用它,尤其是在一些 ...
- ASP.NET中的Response
Response.BufferOutput=true.false 是否设置缓存 Response.Write("") 输出字符串 Response.IsClientConne ...
- Asp.net中Request.Url的各个属性对应的意义介绍
Asp.net中Request.Url的各个属性对应的意义介绍 本文转载自 http://www.jb51.net/article/30254.htm 网络上关于Request.Url的说明已经很多也 ...
随机推荐
- mybatis中添加时间字符串条件
<if test="operatorDateStart != null and operatorDateStart !='' " >operator_date > ...
- Linux设备驱动程序 之 获取当前时间
墙上时间 内核一般通过jiffies来获取当前时间,该数值表示的是最近一次系统启动到当前的时间间隔,它和设备驱动程序无关,因为它的声明期只限于系统的运行期:但是驱动程序可以用jiffies来计算不同事 ...
- Nginx-HTTP之listen指令解析
1. ngx_http_core_listen static char * ngx_http_core_listen(ngx_conf_t *cf, ngx_command_t *cmd, void ...
- Trees Made to Order——Catalan数和递归
Trees Made to Order Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 7155 Accepted: 40 ...
- C# List中的ForEach
; List<string> aaa = new List<string>(){ "aaa", "bbb" }; aaa.ForEach ...
- 4. Linux管理命令
df.du:磁盘.空间相关的命令 df -h 以直观的方式显示磁盘分区使用状况 df test 查询test属于哪个分区 du du -h 以直观方式显示文件夹目录的使用状况 du -s 只显示当 ...
- iptable的四表五链
iptable的概念中有四张表,五条链. 四张表是: filter表——过滤数据包 Nat表——用于网络地址转换(IP.端口) Mangle表——修改数据包的服务类型.TTL.并且可以配置路由实现QO ...
- 3.React中的setstate的几个现象
转载segfault 上面的一篇文章,https://segmentfault.com/a/1190000014498196 1.在同一个方法中多次setState是会被合并的,并且对相同属性的设置只 ...
- 启动hive,提示ls: 无法访问/home/software/spark-2.0.1-bin-hadoop2.7/lib/spark-assembly-*.jar: 没有那个文件或目录
原因是:spark升级到spark2以后,原有lib目录下的大JAR包被分散成多个小JAR包,原来的spark-assembly-*.jar已经不存在,所以hive没有办法找到这个JAR包. 解决办法 ...
- 配置nova服务使用ceph作为后端存储
在ceph监视器上执行 1.创建pool池 为nova服务创建pool池(因为我只有一个OSD节点,所以要将副本数设置为1) ceph osd pool create nova-vms 32 ceph ...