小编wil*_*k89的帖子

.Net Core 2.2 Web API在GET上获取415不支持的媒体类型?

我已经将WebApi项目升级到.net core 2.2,从那时起,我的所有控制器都从每个GET调用中提取415不支持的媒体类型。这非常奇怪,因为根据我的经验,415通常是为POST保留的。

如果我降级到2.1,问题就消失了。我已经在控制器设置和基本的启动配置下面发布了代码。

    [Route("v1/[controller]")]
    [Produces("application/json")]
    [Consumes("application/json")]
    [Authorize]
    public class JobsController : ControllerBase
    {
        [HttpGet]
        public IActionResult GetJobSummaryByUserId([FromQuery] PagedJobRequest pagedJobRequest)
        {
            if (pagedJobRequest.UserId == Guid.Empty)
            {
                pagedJobRequest.UserId = _jwtUtility.GetIdentityId();
            }
            if (!_jwtUtility.DoesJwtIdentityIdMatch(pagedJobRequest.UserId) && !_jwtUtility.IsUserInRole("Administrator"))
            {
                return Unauthorized();
            }

            var returnObj = _jobsService.GetJobSummariesByUserId(pagedJobRequest);

            return Ok(returnObj);
        }
}
Run Code Online (Sandbox Code Playgroud)

在Startup.cs中:

 public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();
        services.AddCors(x => x.AddPolicy("MVRCors", y => y.AllowCredentials().AllowAnyHeader().AllowAnyMethod().AllowAnyOrigin()));
        services.AddEntityFrameworkSqlServer();
        }
   public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
    {

        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
            app.UseSwagger();
            app.UseSwaggerUI(s =>
            {
                s.SwaggerEndpoint("/swagger/v1/swagger.json", "MVR.Api.Jobs"); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-web-api .net-core

9
推荐指数
1
解决办法
8023
查看次数

标签 统计

.net-core ×1

asp.net-web-api ×1

c# ×1