这是来自控制器api的方法:
[HttpPost]
public void SaveFloor(int floorID, string json)
{
Floor floor = db.FloorSet.Find(floorID);
floor.SavedJson = json;
floorRepository.Update(floor);
floorRepository.Save();
}
然后我做了一个ajax调用来传递URL。
function SavingFloor(FloorId, Json) {
$.ajax({
url: "/api/Floor/SaveFloor?FloorID=" + FloorId + "&json=" + Json,
type: "POST",
dataType: 'json',
success: function (data) {
alert('success');
}
});
}
我正在尝试在数据库中保存JSON(数据类型:nvarchar(MAX)),当我调用执行保存的URL时,我收到此错误Error HTTP 404.15 - Not Found
并且它说过滤器模块应用程序已配置如果字符串太长则拒绝请求。
那么,我该怎么办?我生成的的JSON实际上是,实际上应该太长了,这就是目的。请帮忙。
答案 0 :(得分:0)
将JSON字符串作为POST主体发送,而不是作为URL的一部分。将其作为文本和json_decode
发送到服务器上。
function SavingFloor(FloorId, Json) {
$.ajax({
url: "/api/Floor/SaveFloor?FloorID=" + FloorId,
type: "POST",
data: Json,
dataType: 'text/html',
success: function (data) {
alert('success');
}
});
}