2017-01-16 187 views
0

我有一个服务器端点验证一些数据,如果数据验证没有错误,则返回true/false。POST或GET验证REST中的某些数据端点?

那么哪个版本是正确的或更适合RESTful web服务?在身体

POST https://server.de/validate 

POST数据并返回HTTP状态代码200,如果确认没有错误或

GET https://server.de/validate?=data 

发送的报头或查询参数数据,并在响应(状态代码返回真/假200将在正确的请求后返回,独立于数据验证)。

+4

它不是理想的在休息术语的URI动词验证。这更像是程序导向..你必须从资源角度来识别这种情况,并将它转换为你必须验证的资源的获取和发布...... – Jocket

+0

确实,我称之为“验证”。 – Gobliins

+1

这两个URI都没有问题。这两个URI都不作为*资源*,您要传送给它的文档就是一个表示。相反,端点充当处理器,用于转换发送给它们的数据。你应该重新思考你的URI结构*完全*或停止调用你正在做的REST。 – sisyphus

回答

1

如果信息非常敏感,您应该始终使用POST。

阅读This thread更多信息,还有很多类似的问题,与你的,如果你搜索:

编辑/更新: a good source for seeing the difference

+1

即使我们有https? – Gobliins

+0

是的,但这一切都取决于个案的情况,在我关联的问题中有很好的例子,通过它们阅读,您可以更好地了解应该实施的内容。就我个人而言,我更喜欢POST方法,它不太容易受到恶意用户和“错误”的影响,例如,GET方法可以通过恶意用户的链接作为链接发送。@Gobliins – 2017-01-16 09:43:49