具有多个平台的Django rest框架



大家好,我有一个arduino和android应用程序,我需要在没有身份验证的情况下将数据从arduino写入数据库,但如果用户想查看android应用程序中的数据,他需要经过身份验证,我该怎么做呢?谢谢。

您必须首先确定请求是来自arduino还是来自andriod。

要实现这一点,如果是来自客户端的GET方法,您必须传递类似的东西

查询参数中的app=arduino或app=android。

如果是POST方法,您可以发送请求正文(应用程序:"arduino"(。

所以在Django视图中,可以声明一些列表,比如

UN_AUTHENTICATE_METHODS=['get_users']

get_users是一种方法

在您的功能中,

if self.action in UN_AUTHENTICATED_METHODS and request.query_params.dict()["app"]=="arduino":
return (permissions.AllowAny(),)
return (permissions.IsAuthenticated(),)

最新更新