【发布时间】:2018-06-09 17:53:56
【问题描述】:
这是我在使用 get 方法时成功返回 json 数据的 api 代码
public Question[] Get() {
getQuestion obj = new AllDataAccess.getQuestion();
return obj.questionList().ToArray();
}
这是我接受值并保存在数据库中的 post 方法数据
public void Post([FromBody] string question) {
SaveQuestion obj = new AllDataAccess.controller.SaveQuestion();
obj.savaData(question);
}
这是调用我的api的方法
$.ajax({
type: 'POST',
contentType: "application/json; charset=utf-8",
url: 'http://localhost:53893/api/values',
data: "{'question':'" + $("#submit").value + "'}",
dataType: 'json',
async: false,
success: function(data, status) {
console.log(status);
},
error: function(err) {
console.log(err);
}
});
现在的问题是,当我使用一个文本框值发布数据时,它会在控制台中给我一条消息“nocontent”并使用空值记录保存在数据库中
【问题讨论】:
-
不要这样构建 JSON。如果用户在文本字段中输入
',他们会立即破坏它。 -
那么我如何保存我的值,因为它只显示空值
-
在JS端你应该使用
JSON.stringify(model),在服务器端你需要定义一个模型而不是使用string with FromBody。 -
附带说明,
async: false已弃用,不应使用
标签: javascript c# jquery asp.net-mvc asp.net-web-api