(Basitleştirilmiş) ASP.NET Çekirdek Web API denetleyicisine sahibim. Hem GET hem de POST eylemleri kendi makinemde güzel çalışır. Ancak, Azure'a dağıtıldığında yalnızca GET eylemi düzgün şekilde çalışır. POST eylemi bir 404 ile sonuçlanır. Herhangi bir fikir?ASP.NET Çekirdek Web API HTTP POST, Azure'da 404 değerini döndürür
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; }
}
}
}
Tam .NET çerçevesini hedefleyen bir ASP.NET Çekirdek MVC uygulamasıdır. Bir Azure Web Uygulaması olarak dağıtılmıştır. Yerel makinemde ve Azure'da her iki eylemi de Postman kullanarak test ettim.
bir hata denetleyici meydana geldiği zaman, belirli koşullar altında görünen
Web yapılandırmasını kontrol edin ve POST isteklerine izin verilip verilmediğini kontrol edin – Nkosi
İçerik türünü, uygulama/json'dan (404 veren) başka bir şeye değiştirirseniz, 415 "Desteklenmeyen Ortam Türü" aldığımı öğrendim. Ama bu hala benim problemimi çözmüyor. –
ModelBinder'ın '' 'InputModel''' sınıfına bağlayabildiği bir şey gönderiyor musunuz? –