- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我编写了 HTTP 模块来验证 url,如果它有特殊符号,我将重定向到根目录。
我找到了如何执行此操作的不同示例,有人建议将 HttpResponse.SuppressContent 属性设置为 true。但我不确定那种情况会发生什么。 msdn说是指示是否向客户端发送HTTP内容,那么是否意味着重定向不会由客户端发起,而是由服务器发起?
最佳答案
ASP.Net 默认缓冲处理程序的输出。 Response.SupressContent 阻止将该内容发送到客户端,但 header 仍会发送。
示例 1 - 带缓冲和 SupressContent=false 的输出
<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("No Supression");
}
</script>
Dynamic Content
<%= DateTime.Now %>
原始 Http 响应:
HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/html; charset=utf-8
Vary: Accept-Encoding
Date: Sun, 03 May 2015 23:29:17 GMT
Content-Length: 44
No Supression
Dynamic Content
5/3/2015 5:29:17 PM
示例 2 - 带缓冲和 SupressContent=true 的输出
<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("Suppress it all!");
Response.SuppressContent = true;
}
</script>
Dynamic Content
<%= DateTime.Now %>
原始 Http 响应:
HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/html
Date: Sun, 03 May 2015 23:34:13 GMT
Content-Length: 0
请注意此输出没有内容。
您的问题具体是关于重定向会发生什么。
示例 3 - 当 SupressContent=true 时重定向
<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
Response.Redirect("~/SomewhereElse.aspx");
// Exception was thrown by previous statement. These two lines do not run.
Response.Write("Redirect Supress Content");
Response.SuppressContent = true;
}
</script>
Dynamic Content
<%= DateTime.Now %>
原始 Http 响应:
HTTP/1.1 302 Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Location: /SomewhereElse.aspx
Date: Sun, 03 May 2015 23:35:40 GMT
Content-Length: 136
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="/SomewhereElse.aspx">here</a>.</h2>
</body></html>
注意还有一具尸体。那是因为我们不允许请求完全处理。默认情况下,Response.Redirect 将引发异常,并且 Response.SupressContent 属性未设置为 true。如果我们将 false 传递给第二个参数,它看起来就像上面的示例。
示例 4 - 当 SupressContent=true 时重定向,并且 Response.Redirect 不会抛出异常。
<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
Response.Redirect("~/SomewhereElse.aspx", false);
Response.Write("Redirect Supress Content");
Response.SuppressContent = true;
}
</script>
Dynamic Content
<%= DateTime.Now %>
原始 Http 响应:
HTTP/1.1 302 Found
Cache-Control: private
Content-Type: text/html
Location: /SomewhereElse.aspx
Date: Sun, 03 May 2015 23:37:45 GMT
Content-Length: 0
关于c# - 我什么时候应该将 HttpResponse.SuppressContent 设置为 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29995844/
在 ASPX 页面中,我想根据代码路径在特定点(不是由于错误条件)结束响应,以便没有其他内容被发送回流中。如此自然地使用: Response.End(); 这会导致 ThreadAbortExcept
我正在编写一些需要使用我自己的代码 HttpResponse对象捕获来自另一个对象的方法的输出,该方法采用 HttpResponse作为参数。问题是,另一个对象(我无法修改)调用 HttpRespon
嘿伙计们,我对编码有点陌生,但我正在尽力而为。我一直在关注这个登录和注册教程here 。我下载了他的源代码并添加到我的数据库信息中,它可以在 Eclipse 中与他的项目配合使用。但是当我在项目中运行
我在android studio工作。我花了很多时间搜索如何从 mysql 数据库检索特定行,但实际上每次我的应用程序在 HttpResponse httpResponse = httpClient.
import urllib.request html = urllib.request.urlopen('http://jshawl.com/python-playground/') s = html
我的 if (httpResponse == null) block 没有运行。如何在 HttpResponse httpResponse = httpClient.execute(httpPost)
有没有办法控制 contenttype ='application/pdf' 的 HTTPResponse 的缩放大小? 最佳答案 我试了一下它的工作。 download.ashx?id=1zoo
我在休息服务中有以下方法: @POST @Path("/create") @ResponseStatus(HttpStatus.CREATED) @Consumes(M
我的服务器端 Dart Web 应用程序为某些请求提供图像文件。 简单来说,它目前的作用如下: HttpServer.bind(InternetAddress.ANY_IP_V4, 80)
所以我尝试创建一个 HttpsRequest,效果非常好。问题是,我做错了什么,我认为这可能是因为我使用 HttpResponse,但我没有找到任何与 Https 类似的东西。有没有一种方法可以像 h
我已经为此端点编写了一个 REST 客户端: textmap.com/ethnicity_api/api 但是,当在 POST 参数中向其传递诸如 jennífer garcía 之类的名称字符串并将
首先 - 我对 Java 还很陌生。我正在开发一个使用 Shiro 的应用程序,并且我已经定义了用于注销的 REST。它内部有一个重定向,在 Chrome 中使用开发工具时会显示 302 Found
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: Parsing an UTF-8 Encodded XML file 我正在解析一个 UTF-8 编码的 X
我将我的代码放在 AsyncTask 中,在 OnPostExecution 中,Dialog 中的结果与 Logcat 中记录的结果不同。Logcat里的不全,Dialog里的全 这是我的代码:
我正在尝试从 https://....com:8455 链接获取内容,其中 “服务器的证书不受信任”。内容是:“测试”。 但在 HttpResponse response = httpClient.e
在我之前的项目中,我使用了 AsyncHttpClient 并且 lib 是 android-async-http-1.4.8.jar 并且一切都很好。但是现在当我在不同的 eclipse 环境中导入
在 Python 中(使用 Python 3.2,但我想它在 Python 2.x 中应该基本相同),我尝试对某个 URL 发出请求。 如果出现访问被拒绝等错误,我会得到一个异常: >>> reque
我正在使用 org.apache.http.HttpResponse 我想创建一个空的虚拟响应,我将使用它在发生错误时返回而不是传回 null。 我试图创建一个,但它丢失了一些奇怪的参数。谁能告诉我如
这个问题在这里已经有了答案: Android: How get the status-code of an HttpClient request (3 个答案) 关闭 9 年前。 我正在尝试获取 H
以下方法在读取 HttpResponse 时失败并出现错误:“内容已被消耗”。我知道内容只能使用一次,但我在第一次尝试时遇到此错误,而且我在代码中看不到任何可能使用它两次的地方。 privat
我是一名优秀的程序员,十分优秀!