【发布时间】:2021-10-16 20:13:35
【问题描述】:
我知道有很多类似的问题,但我从那里尝试了一些答案,但我的案例仍然无法正常工作。 我正在尝试将我的 Json 数据传递给 MVC 控制器,但从未调用过控制器。有什么想法吗?
Ajax 调用:
function getContentModelFromController(onsuccess) {
var chunks = [{
content: $('#ir-content').text(),
lang: "en",
mimeType: "text/plain"
}];
var content = {
title: $('#ir-title').text(),
chunks: chunks
};
$.ajax({
type: 'POST',
url: "@Url.Action("GetContentModelForReaderAsync","Home")",
contentType: 'application/json',
data: JSON.stringify(content),
dataType: 'json',
traditional: true,
success: function (result, status) {
onsuccess(result, status);
console.log('GetContentModelForReaderAsync WORKED ');
},
error: function (result, status) {
console.log('GetContentModelForReaderAsync ' + result.status);
console.log('GetContentModelForReaderAsync ' + status);
}
});
}
控制器:
public class Chunk {
public string content { get; set; }
public string lang { get; set; }
public string mimeType { get; set; }
}
public async Task<JsonResult> GetContentModelForReaderAsync(
List<Chunk> chunks, string title
)
{
.....
}
【问题讨论】:
-
您是否查看了浏览器中的开发人员工具以了解实际发生的情况?
-
使用 F12 打开开发者工具,转到 [Network] 选项卡并查找任何请求。可能会出现 404 或 500 错误,因为您的端点没有被调用。您还可以从开发控制台查看 javascript 代码,并确保 MVC 将正确的 URL 放入您的代码中。
-
是的,它进入错误部分,结果为 404 result.status
-
请发布您的路线配置。
标签: c# json model-view-controller