- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Nancy 编写一个简单的 Web 应用程序。至少有一个请求会导致未知长度的流,因此我无法提供 Content-Length
.我想用 Transfer-Encoding: chunked
,或(在这种情况下同样可以接受, Connection: close
)。
我对 Nancy 源代码进行了快速破解,并添加了 Response.BufferOutput
, 和设置代码 HttpContext.Response.BufferOutput
至 false
.你可以在这里看到:
public class HomeModule : NancyModule
{
public HomeModule()
{
Get["/slow"] = _ => new SlowStreamResponse();
}
private class SlowStreamResponse : Response
{
public SlowStreamResponse()
{
ContentType = "text/plain";
BufferOutput = false;
Contents = s => {
byte[] bytes = Encoding.UTF8.GetBytes("Hello World\n");
for (int i = 0; i < 10; ++i)
{
s.Write(bytes, 0, bytes.Length);
Thread.Sleep(500);
}
};
}
}
WebRequest
基于客户端。
HttpListener
编写一个简单的服务器,我可以设置
SendChunked
至
true
,它发送分块的输出,我的简单客户端正确地以块的形式接收。
最佳答案
在我的实验中,我发现我需要以下配置。首先,设置您的 web.config
文件如 Nancy Wiki 中所述.值得注意的是,为了设置disableoutputbuffer
值(这是我们想要的),看来您目前还需要指定一个 bootstrap 。在您的程序集中创建一个继承自 Nancy.Hosting.Aspnet.DefaultNancyAspNetBootstrapper
的类并在配置文件中指定它似乎有效。
<configSections>
<section name="nancyFx" type="Nancy.Hosting.Aspnet.NancyFxSection" />
</configSections>
<nancyFx>
<bootstrapper assembly="YourAssembly" type="YourBootstrapper"/>
<disableoutputbuffer value="true" />
</nancyFx>
Transfer-Encoding
标题。相反,以下路由定义似乎正确地将结果从我的 IIS Express 开发服务器传输到 Chrome:
Get["/chunked"] = _ =>
{
var response = new Response();
response.ContentType = "text/plain";
response.Contents = s =>
{
byte[] bytes = System.Text.Encoding.UTF8.GetBytes("Hello World ");
for (int i = 0; i < 10; ++i)
{
for (var j = 0; j < 86; j++)
{
s.Write(bytes, 0, bytes.Length);
}
s.WriteByte(10);
s.Flush();
System.Threading.Thread.Sleep(500);
}
};
return response;
};
关于nancy - 如何在 NancyFX 中编写流输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11484873/
我在控制台项目中创建了一个简单的自托管 Nancy 站点,其中包含一个模块。在测试它时,我注意到每个请求都会调用模块构造函数。这让我很困惑,因为 ctor 也是路由注册的地方。这对我来说没有意义,我一
我喜欢 NancyFX 错误自定义页面。不幸的是,除了错误之外,急需的客户不愿看到绿色怪物。有什么方法可以从几乎完美的 nancyfx 错误消息页面中删除图像吗? 最佳答案 您实现了 IStatusC
我想了解为什么我的示例项目中的 nancyFx 无法处理并行查询。我正在运行 Windows 8、VS2015、C#、fiddler 4。 这是我的示例服务: class Program {
我想弄清楚 NancyFx 请求容器是如何工作的,所以我创建了一个小测试项目。 我创建了一个这个界面 public interface INancyContextWrapper { Nancy
我正在尝试了解 NancyFX 中的 DynamicDictionary,它看起来很酷。有谁知道一篇博客文章或类似的文章,它贯穿了它的内部结构? 我需要一个 propertybag 来传递我不知道其内
当 NancyFx 应用 Bind<>()在带有 DateTime 的对象上属性,它创建了一个 Local日期时间,而不是 Utc日期时间。 这是从客户端 javascript 接收到的正文(我单独反
这可能是非常基本的问题。但我想知道不同的 nancyfx 托管选项。基本上我读了一篇关于在 heroku 上托管 Nancyfx 网络应用程序的文章,他们提到这种类型的托管需要自托管。通常我使用 Na
我想从父目录提供我的静态文件,这样我就可以在应用程序仍在运行时修改它们以便于开发。我试图像这样在我的 Bootstrapper 中添加静态内容约定: this.Conventions.StaticCo
我的特定上下文是一个自托管的 Nancy 应用程序,我在其中使用 RavenDb 嵌入式文档数据库。 我的 Bootstrap 看起来像这样: public class MyBootstrapper
我正在尝试使用 Nancy 让我的自托管服务在出现未捕获的异常时返回 json 格式的错误。然而,我总是得到回应: {"readyState":4,"status":404,"statusText":
我正在使用 Nancy 编写一个简单的 Web 应用程序。至少有一个请求会导致未知长度的流,因此我无法提供 Content-Length .我想用 Transfer-Encoding: chunked
我试图通过 Nancy.Testing.Browser 对象传递路由参数(不是查询参数!)。 我了解(现在)如何向/从我的 NancyModule 发送和使用查询字符串: var customerRe
我真的很习惯 ASP.NET MVC 方法:用相应的属性注释模型,MVC 会验证它并更新 ModelState.Errors,ModelState 在 View 上可用,因此可以向用户显示错误。 我还
根据我在源代码中看到的内容,RequiresAuthentication() 对整个模块进行身份验证检查。有什么方法可以按路线执行此操作吗? 最佳答案 我遇到了同样的问题。然而事实证明,Require
编译 View 时出错 Error compiling template: views/devices.cshtml Errors: [CS0234] Line: 3 Column: 27 -
使用 nancyfx 是否可以使用发布数据重定向到另一种方法? 在我的示例中,在用户注册后我想自动执行登录(我知道还有其他方法可以实现此目的,我可以从 Post["/login"] 中提取代码并从两种
我们使用 NancyFx 来托管单页应用程序和多个 ReST 端点。代码和测试使用相同的 Bootstrap ,唯一的区别是在测试中我们使用测试框架中的 Nancy Browser。 如果我从网站返回
我在我的应用程序中运行一个自托管的 NancyFX 网络服务器。现在我托管了一个模块: public class MetricsModule : NancyModule { private I
我最近部署到 http://domainshop.apphb.com/使用以下 NuGet 包的简单 ASP.NET 应用程序: Nancy.Hosting.Aspnet Dapper MySql.D
我有一个应用程序,它有一个基于 NancyFx 的休息服务,我发现它是一个非常酷的框架。但是我在阻止它方面遇到了很大的问题。我的主机类如下所示: public class RestHost : ISt
我是一名优秀的程序员,十分优秀!