项目:NetCore Web API
接口支持Json参数需要安装Newtonsoft.Json.Linq和Microsoft.AspNetCore.Mvc.NewtonsoftJson
Program代码
//支持json需要安装Microsoft.AspNetCore.Mvc.NewtonsoftJson
using Newtonsoft.Json.Serialization;var builder = WebApplication.CreateBuilder(args);// Add services to the container.builder.Services.AddControllers();
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();//支持json参数
builder.Services.AddControllers().AddNewtonsoftJson(options =>
{options.SerializerSettings.ContractResolver = new DefaultContractResolver();
});var app = builder.Build();// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{app.UseSwagger();app.UseSwaggerUI();
}app.UseHttpsRedirection();app.UseAuthorization();app.MapControllers();app.Run();
Controller代码
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json.Linq;namespace TestAPI.Controllers
{[ApiController][Route("[controller]")]public class TestController : ControllerBase{ private readonly ILogger<TestController> _logger;public TestController(ILogger<TestController> logger){_logger = logger;}[HttpPost][Route("GetTest")]public JsonResult GetTest(JObject requestParObj){return new JsonResult(requestParObj);}}
}