Я пытаюсь отправить сообщение на сервер ASP.NET core 3. Однако мой number
всегда 0
. Есть ли в ASP.Net Core 3 хитрость, которую я не понимаю?
Параметр [FromBody]
не решает проблему. И классы как параметр не помогают. Значения не меняются.
[HttpPost]
[Route("/api/add")]
public ActionResult<Dictionary<string, object>> Add(int number)
{
// number is always 0 :( <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
number += 1;
var d = new Dictionary<string, object>
{
["message"] = "Hello",
["number"] = number
};
return Ok(d);
}
let input = { number: 5825 }
$.ajax(
{
url: `/api/add`,
type: 'POST',
dataType: "json",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(input),
accepts: "application/json",
complete: function (output) {
// completed
}
}
);
Мои сервисы
services.AddSession();
services.AddHttpContextAccessor();
services.AddControllersWithViews();
И я использую
app.UseSession();
app.UseStaticFiles();
app.UseRouting();
app.UseCors();
app.UseAuthorization();
app.UseEndpoints(endpoints => { endpoints.MapControllerRoute("default", "{controller=Default}/{action=Index}/{id?}"); });