我在asp core2.2
中创建了一个Web服务,并从客户端(angular6)
发送数据。
我在Admin
区域中的控制器。
此启动:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseSignalR(routes =>
{
routes.MapHub<CrudRealTime>("/CrudRealTime");
});
app.UseCors("CorsPolicy");
app.UseMvc(routes =>
{
routes.MapRoute(
name: "areas",
template: "{area:exists}/{controller=Home}/{action=Index}/{id?}"
);
});
}
我使用此地址访问RoleManager Controller中的Create Roles
Actoin:
https://localhost:44390/api/role/createrole
,但不起作用。当我使用此角色时,它可以正常工作:https://localhost:44390/api/role/GetRoles
,但我不知道问题出在哪里,该如何解决。
我上次运行该项目,它从Client提供数据,但现在不起作用。我没有更改服务器代码中的任何内容。
我该如何解决这个问题??
角色动作
[HttpPost("CreateRole")]
public async Task<IActionResult> CreateRole([FromBody]RolePostModel model)
{
if (ModelState.IsValid)
{
var result = await _roleManag.CreateAsync(new Role(model.description, model.rolelevel, model.name));
if (result.Succeeded)
{
return Ok(Messagesresx.Success_Add_Role);
}
else
{
return Content(Messagesresx.Fail_Add_Role_In_DataBase);
}
}
else
{
return BadRequest();
}
}
答案 0 :(得分:1)
您能通过邮递员点击CreateRole吗?如果要在Json中发布,请通过将accept标头设置为application / Json来尝试。 如果成功命中,则意味着您需要在启动WebAPI时配置InputFormatter以接受从角度应用程序发布的格式,或者尝试更改发送的格式。