我尝试在 ApplicationStartup 覆盖的 bootstrap 中添加它。

pipelines.AfterRequest.AddItemToStartOfPipeline(ctx =>
{
  ctx.Request.Headers["x-fcr-version"] = "1";
});

它给了我错误。

任何人都可以指出我正确的方向吗?

最佳答案

请注意您在尝试操作 Request 时如何尝试设置 Response

试试这个..

protected override void RequestStartup(TinyIoCContainer container, IPipelines pipelines, NancyContext context)
{
    base.RequestStartup(container, pipelines, context);

    pipelines.AfterRequest.AddItemToEndOfPipeline(c =>
    {
        c.Response.Headers["x-fcr-version"] = "1";
    });
}

这就是我的 Response 的样子..

或者 .. 如果要在模块级别设置它,则可以使用 Connection Negotiation ...
Get["/"] = parameters => {
    return Negotiate
        .WithModel(new RatPack {FirstName = "Nancy "})
        .WithMediaRangeModel("text/html", new RatPack {FirstName = "Nancy fancy pants"})
        .WithView("negotiatedview")
        .WithHeader("X-Custom", "SomeValue");
};

关于c# - 如何在 Nancyfx 中添加请求头?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28258203/

10-10 21:55