区分来自自己的app / webapp与服务器的API调用

时间:2017-09-16 16:37:21

标签: android django rest api django-rest-framework

我正在使用Django,我们正在计划为第三方使用我们的一些API。

到目前为止,我们一直在为我们的Android应用程序使用DRF以及Django Web App的会话身份验证和使用JWT的DRF。

我想知道的是,呼叫是来自我们自己的应用程序(webapp / android应用程序)还是来自第三方应用程序(他们可以从他们自己的应用程序调用,可以是其他webapps / phone应用程序)。有什么办法可以区分吗?我们希望将第三方API调用计数到我们的服务器。

1 个答案:

答案 0 :(得分:0)

您的Android应用可以使用应用版本添加标题User-Agent。所以你可以区分请求。然而,它不是非常可靠 - 因为任何Web客户端都可以发送此类标头。在这里,您可以签署您的请求。取URL添加一些秘密值从这个值计算md5 / sha2并添加到请求。 保护是基于只有你知道秘密价值的想法。对于非关键任务是可以的,但对于财务应用程序可能存在风险。