有啥方法可以在 .net core 3.1 的基本控制器上获取 XMLHttpRequest 的数据类型
Posted
技术标签:
【中文标题】有啥方法可以在 .net core 3.1 的基本控制器上获取 XMLHttpRequest 的数据类型【英文标题】:Is there any way to get data type of XMLHttpRequest on base controller in .net core 3.1有什么方法可以在 .net core 3.1 的基本控制器上获取 XMLHttpRequest 的数据类型 【发布时间】:2021-11-02 05:57:55 【问题描述】:这是任何 Jquery ajax POST 请求;
$.ajax(
type: "POST",
url: "/Customers/GetAll",
contentType: "application/json",
dataType: "json",
success: function(response)
console.log(response);
,
error: function(response)
console.log(response);
);
这是上面 ajax 请求的我的控制器操作方法;
public IActionResult GetAll()
//Method body...
如何在基本控制器或操作方法中获取任何 ajax 请求的dataType
?
【问题讨论】:
【参考方案1】:尝试在标题中获取accept
:
行动:
public IActionResult GetAll()
string dataType = HttpContext.Request.Headers["accept"].ToString();
//Method body...
【讨论】:
【参考方案2】:可以在 HttpContext 对象上检索标头。
if(HttpContext.Request.Headers.TryGetValue("accept", out var acceptHeaders))
var firstAcceptHeader = acceptHeaders.FirstOrDefault();
您还可以使用索引Headers["accept"]
访问标头值,但请注意,如果没有接受标头,无论出于何种原因,这都会引发 NullReferenceException。
【讨论】:
以上是关于有啥方法可以在 .net core 3.1 的基本控制器上获取 XMLHttpRequest 的数据类型的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET Core 3.1使用AutoMapper(基本使用)
到 Azure ACI 的基本容器化 ASP.NET 3.1 Core 应用部署失败
.Net 5 .Net Core 3.1 mvc 调试js或cshtml 视图运行时编译 解决方案
如何在启动类中读取应用程序 URL,特别是在 .net core 3.1 中的“ConfigureService”方法中?