This commit is contained in:
2024-11-05 08:28:42 +01:00
parent 4ecf802db3
commit 8ab7ab8c38
24 changed files with 1240 additions and 1992 deletions

View File

@@ -73,14 +73,14 @@ Public Module WebApiConfig
config.AddApiVersioning(Function(options)
options.ReportApiVersions = True
options.AssumeDefaultVersionWhenUnspecified = True
options.ApiVersionReader = ApiVersionReader.Combine(New UrlSegmentApiVersionReader(),
New HeaderApiVersionReader("x-api-version"),
New MediaTypeApiVersionReader("x-api-version"))
'options.DefaultApiVersion = New ApiVersion("1")
End Function)
'config.AddApiVersioning(Function(options)
' options.ReportApiVersions = True
' options.AssumeDefaultVersionWhenUnspecified = True
' options.ApiVersionReader = ApiVersionReader.Combine(New UrlSegmentApiVersionReader(),
' New HeaderApiVersionReader("x-api-version"),
' New MediaTypeApiVersionReader("x-api-version"))
' 'options.DefaultApiVersion = New ApiVersion("1")
' End Function)
config.AddVersionedApiExplorer(Function(c)
@@ -98,15 +98,50 @@ Public Module WebApiConfig
Public Sub Register(ByVal config As HttpConfiguration)
SwaggerConfig.Register(config)
Dim constraintsResolver = New DefaultInlineConstraintResolver()
constraintsResolver.ConstraintMap.Add("apiVersion", GetType(ApiVersionRouteConstraint))
config.MapHttpAttributeRoutes(constraintsResolver)
'config.Filters.Add(New AuthorizeAttribute) 'wenn alle API Aufrufe autorisiert werden müssen/ansonsten können einzelene Controlleraufrufe auth. werden!
config.Filters.Add(New BasicAuthenticationAttribute())
'config.AddApiVersioning(Sub(options As Action(Of ApiVersioningOptions)
' '// reporting api versions will return the headers "api-supported-versions" and "api-deprecated-versions"
' options.ReportApiVersions = True
' options.AssumeDefaultVersionWhenUnspecified = True
' options.ApiVersionReader = ApiVersionReader.Combine(New UrlSegmentApiVersionReader(),
' New HeaderApiVersionReader("x-api-version"),
' New MediaTypeApiVersionReader("x-api-version"))
' End Sub)
config.AddApiVersioning(Sub(options As Microsoft.Web.Http.Versioning.ApiVersioningOptions)
options.AssumeDefaultVersionWhenUnspecified = True
options.ReportApiVersions = True
options.DefaultApiVersion = New Microsoft.Web.Http.ApiVersion(1, 0)
options.DefaultApiVersion = New Microsoft.Web.Http.ApiVersion(2, 0)
options.ApiVersionSelector = New Microsoft.Web.Http.Versioning.LowestImplementedApiVersionSelector(options)
End Sub)
config.AddVersionedApiExplorer(Function(c)
c.GroupNameFormat = "'v'VVV"
c.SubstituteApiVersionInUrl = True
End Function)
If False Then 'wenn alle API Aufrufe autorisiert werden müssen/ansonsten können einzelene Controlleraufrufe auth. werden!
config.Filters.Add(New AuthorizeAttribute)
Else
config.Filters.Add(New BasicAuthenticationAttribute())
End If
SwaggerConfig.Register(config)
End Sub