Web API GET与POST

时间:2014-11-25 12:25:24

标签: c# asp.net-web-api

我最初设置了一个Web API(不是任何带有web api的专家),并在线跟踪某人的教程,将参数传递给一个简单的get API调用。

我最初使用查询字符串创建了一个GET,但是教程显示如何使用POST允许我将JSON传递给POST API参数中的类对象,这似乎是一个好主意。

后来一位开发人员说这是不好的做法?是吗?我应该总是使用GET而不是POST,这本质上应该是它应该是... GET调用,但我喜欢通过对象传递参数并避免使用查询字符串进行长API调用的想法。

所以:

$.ajax({
    url: '\api\getlist\1?param2=yyyy&param3=kikkkk&param4=88' etc   
})

var params = ....

$.ajax({
    url: '\api\getlist\',
    data: params
})

我该怎么做,将代码更改回使用GET?缓存怎么样?

1 个答案:

答案 0 :(得分:2)

你应该看一下http documentation in w3c

建议使用

GET来读取数据,POST用于向服务器发送信息(写入操作)。

从客户端的角度来看,您可以在jquery ajax设置中设置,不要使用以下代码的缓存:

$.ajaxSetup({
    cache: false
});

它会在异步请求上生成一个随机参数,以便每次都发出不同的请求,添加如下参数:?_-31312312312