Nancy WithMediaRangeResponse for Accept类型仅因参数而异

时间:2016-11-04 16:17:29

标签: c# nancy

我有一个应该支持两种内容类型的nancy端点:

application/vnd.mycompany.something+json;version=1
application/vnd.mycompany.something+json;version=2

我想根据Accept标头的version参数返回不同的响应。

我正在尝试使用此代码,这似乎是合理的,但它总是匹配V1。我能做些什么来使匹配更具体吗?

return this.Negotiate
    .WithMediaRangeResponse(new MediaRange("application/vnd.mycompany.something+json;version=1"), () => {
            return someV2Response;
        })
    .WithMediaRangeResponse(new MediaRange("application/vnd.mycompany.something+json;version=2"), () => {
            return someV2Response;
        })
    .WithMediaRangeResponse( new MediaRange("*/*"), () => new Response { StatusCode = HttpStatusCode.NotAcceptable });

0 个答案:

没有答案