作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果我使用的是 HttpListener,如何模拟 WebException 304 错误返回给浏览器?
那是我收到了对我的 HttpListener 的请求,然后获得了 HttpListenerContext,然后从这一点我将如何模仿/安排 HTTP“304 未修改”响应通过 HttpListenerContext 有效地发送回浏览器。回复?
编辑:
我尝试了以下操作,但是在尝试将 WebException.Status 复制到 HttpWebResponse.StatusCode 时出现错误(状态代码必须正好是三位数)。关于如何纠正此问题的任何想法?
catch (WebException ex)
{
listenerContext.Response.StatusCode = (int)ex.Status; //ERROR: The status code must be exactly three digits
listenerContext.Response.StatusDescription = ex.Message;
listenerContext.Response.Close();
谢谢
最佳答案
我想我有:
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
int statusCode = (int) ((HttpWebResponse) ex.Response).StatusCode;
listenerContext.Response.StatusCode = statusCode;
listenerContext.Response.StatusDescription = ex.Message;
log("WARNING", uri, "WebException/ProtocolError: " + ex.GetType() + " - " + ex.Message);
}
else
{
log("ERROR", uri, "WebException - " + ex.GetType() + " - " + ex.Message);
}
listenerContext.Response.Close();
}
关于.net - HttpListener - 如何将 WebException HTTP 304 "Not Modified"错误发送回浏览器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2611264/
我是一名优秀的程序员,十分优秀!