QueryStringApiVersionReader
Program.cs更新如下
builder.Services.AddApiVersioning(config => {
//Reads version number from request url at "apiVersion" constraint
//config.ApiVersionReader = new UrlSegmentApiVersionReader();
//Reads version number from request query string called "api-version"
config.ApiVersionReader = new QueryStringApiVersionReader();
//Set default ApiVersion
config.DefaultApiVersion = new ApiVersion(1, 0);
config.AssumeDefaultVersionWhenUnspecified = true;
});
注释CustomControllerBase中带版本的Route
//[Route("api/v{version:apiVersion}/[controller]")]
[Route("api/[controller]")]
[ApiController]
public class CustomControllerBase : ControllerBase
{
}
运行结果
HeaderApiVersionReader
Program.cs更新如下
builder.Services.AddApiVersioning(config => {
//Reads version number from request url at "apiVersion" constraint
//config.ApiVersionReader = new UrlSegmentApiVersionReader();
//Reads version number from request query string called "api-version"
//config.ApiVersionReader = new QueryStringApiVersionReader();
//Reads version number from request header called "api-version". Eg:
api-version: 1.0
config.ApiVersionReader = new HeaderApiVersionReader("api-version");
//Set default ApiVersion
config.DefaultApiVersion = new ApiVersion(1, 0);
config.AssumeDefaultVersionWhenUnspecified = true;
});
Postman测试
Gitee获取源码: