我有一个简单的Web API应用程序,它可以将GET
或POST
数据返回给用户。数据是一个简单的字符串数组,["foo", "bar"]
。如果我尝试并将POST
数据发送到Web API,则数据将成功读入POST
方法,但通过另一次调用返回到Web API时,以前的发布数据将不再存在。Web API Post方法不保存数据
如何在每台服务器上保存数据POST
。
这是什么,是我的服务器上:
[HttpPost]
public HttpResponseMessage Post([FromBody]string value)
{
data.Add(value);
var msg = Request.CreateResponse(HttpStatusCode.Created, "Added element");
msg.Headers.Location = new Uri(Request.RequestUri + "/" + (data.Count - 1).ToString());
return msg;
}
发送POST
与data = John Doe
将它添加到List<String>
称为数据,但它不会在返回到服务器持续。
这是怎么了调用服务器:
$.ajax({
url: url,
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(data), // data = "John Doe"
success: function (data) {
console.log(data);
},
error: function (data) {
console.log(data);
}
});
从本质上讲,我怎样才能使"John Doe"
坚持在服务器上发送一个POST
到它的时候。制作List<String> data = ["foo", "bar", "John Doe"]
数据是控制器上的一个字段。你的控制器是根据请求实例化的,所以'Data'字段在每个请求中都是新的。你需要添加某种持久性。 – Amy