c# - 当 HttpContext.Request.HasFormContentType = true 时 HttpContext.Request.Form.Keys 为空
问题描述
这是 2 天前工作的,现在不行了,我不知道为什么。我通过 ajax 提交表单数据:
var mData = 'item=' + itemid + '&action=' + action;
$.ajax({
url: "/Admin/Home/Ajax",
type: 'POST',
contentType: 'application/x-www-form-urlencoded',
data: mData,
success: function (data) {
//Do Something
}
});
我有一个处理传入帖子的方法:
if (HttpContext != null && HttpContext.Request.HasFormContentType)
{
foreach (var key in HttpContext.Request.Form.Keys)
{
QueryParams.Add(key, HttpContext.Request.Form[key]);
}
}
发布数据时,HttpContext.Request.HasFormContentType
等于 true 然而,HttpContext.Request.Form.Keys.Count
等于 0
我没有得到任何错误或任何东西。任何有关正在发生的事情的帮助或见解将不胜感激。
这是一个 dotnet core 2.2 mvc 网络应用程序。
解决方案
这是一个工作演示,如下所示:
1.查看:
<script>
var mData = 'item=' + 1 + '&action=' + "aaa";
$.ajax({
url: "/Home/Ajax",
type: 'POST',
contentType: 'application/x-www-form-urlencoded',
data: mData,
success: function (data) {
//Do Something
}
});
</script>
2.动作:
[HttpPost]
public void Ajax(int item,string action)
{
if (HttpContext != null && HttpContext.Request.HasFormContentType)
{
foreach (var key in HttpContext.Request.Form.Keys)
{
}
}
}
推荐阅读
- javascript - 快餐店问题
- linux - 如何使用免费的 windows 堆栈在亚马逊 aws 免费层上使用 XAMPP 部署 windows 开发的应用程序?
- angular - 如何检测刷新页面并重定向到另一个页面
- python - Numpy:你可以使用广播来逐行替换值吗?
- algorithm - 从源到目标的最小操作数。
- python - 从 Django sqlite3 数据库中删除对象,减少数据库大小
- highcharts - Highcharts Solid Gauge:删除窗格中的浪费空间
- javascript - JavaScript - 返回名称中包含子字符串的第一个属性的值
- firefox - 如何在 FireFox 中禁用屏幕触摸?
- python - 为什么在我的硬币兑换程序(Python 3)中出现“AttributeError:'int' object has no attribute 'append')”?