剑轩

net core webapi版本控制

电脑版发表于:2019/11/8 15:17

webapi的版本控制好处很多,要实现其实也比较简单。


在webapi中根据不同的版本创建文件夹。

然后在不同的api里边添加不同的路由


V1里边:

V2里边


效果如下:

v1版本:

V2版本:

当然如果需要加入更多版本消息可以借助:Microsoft.AspNetCore.Mvc.Versioning -Version

下载: Install-Package Microsoft.AspNetCore.Mvc.Versioning -Version 2.2.0


在ConfigureServices中去引用

services.AddApiVersioning(option =>
{
    //为true时API返回支持的版本信息
    option.ReportApiVersions = true;
    //不提供版本时,默认为1.0
    option.AssumeDefaultVersionWhenUnspecified = true;
    //请求中未指定版本时要使用的默认 API 版本
    option.DefaultApiVersion = new ApiVersion(1, 0);
});

然后在webapi中指定一下:



借助header实现版本控制:

需要配置 ApiVersionReader 选项。代码如下:

请求的时候在header里边提供api-version即可


但是, 现在查询字符串参数的方法进行版本控制将不起作用。一旦设置了header, 就不能指定查询字符串参数。如果您希望支持这两种情况, 而不是 HeaderApiVersionReader, 请使用 QueryStringOrHeaderApiVersionReader



关于TNBLOG
TNBLOG,技术分享
ICP备案 :渝ICP备18016597号-1
App store Android
精彩评论
{{item.replyName}}
{{item.content}}
{{item.time}}
{{subpj.replyName}}
@{{subpj.beReplyName}}{{subpj.content}}
{{subpj.time}}
猜你喜欢