令牌认证Do's and Dont's

时间:2015-09-16 07:29:54

标签: json api rest authentication token

我们需要在服务器端使用提供json的Rest-API设置App-Server通信。

我们希望向服务器发送令牌以验证应用。需要使用HTTPS,以便加密连接。 但我们很清楚如何做到这一点。提出了几个问题:

我可以使用GET请求发送令牌吗?,或者如果我使用POST请求发送令牌,那么令牌是否仅由HTTPS加密?

我在哪里放置令牌?令牌只是我的json数组的另一个参数吗?我必须把它放在HTTP头中吗? (我听说过这个,但不知道怎么做?)

我何时使用POST以及何时使用GET请求? 我的假设是使用GET,如果我(作为应用程序)想要一个对象列表或单个对象,并使用POST,如果我想给服务器一个对象,服务器需要保存。

1 个答案:

答案 0 :(得分:1)

无论您使用的是哪个动词,代码通常都会在请求的Authorization HTTP标头中发送。

可以将令牌作为查询参数发送,但通常不赞成。 使用HTTPS时会对加密请求(包括查询参数)进行加密,但可能会在Web服务器上记录包含查询参数的请求URL,从而可能泄露令牌。

在良好的REST API中,您使用GET从服务器和POST检索资源以创建新资源或更改服务器上的资源状态。

另见this article