
namespace Foo{ using System; using System.Collections.Generic; using Microsoft.AspNetCore.Mvc; [Requirehttps] [Produces("application/Json")] [Area("Foo")] [Route("[area]/API/[controller]")] public class barController : Controller { [httpGet] public IEnumerable<string> Get() { return new[] {"Hello","World!"}; } [httpPost] public voID Post([FromBody] inputModel model) { } public class inputModel { public int Foo { get; set; } } }} 它是一个针对完整.NET框架的ASP.NET Core MVC应用程序.它部署为Azure Web App.我已使用Postman在本地计算机和Azure中测试了这两个 *** 作.
解决方法 在某些情况下,当控制器发生错误时,ASP.NET核心返回404而不是更合适的500.看看这篇文章:ASP.NET Core 2.0 site POST request resulting in 404 on Azure
在答案中,它是由错误的数据库连接字符串引起的(当您将应用程序发布到另一个环境时可能就是这种情况),但它可能是其他内容.
不知道为什么它不会抛出正常错误,也许它会尝试重定向到自定义错误页面或类似的东西.
要检查此建议,请尝试从POST控制器中删除所有内容以隔离问题.如果它不会返回404,则意味着控制器中的某些内容会抛出异常.
总结以上是内存溢出为你收集整理的ASP.NET Core Web API HTTP POST在Azure中返回404全部内容,希望文章能够帮你解决ASP.NET Core Web API HTTP POST在Azure中返回404所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)