【问题标题】:Only send one email for each group of calls to a REST API function对 REST API 函数的每组调用仅发送一封电子邮件
【发布时间】:2014-08-09 08:07:21
【问题描述】:

每当用户对下面的 API 函数进行一批调用时,我想发送一封电子邮件(我正在使用 Django REST 框架来实现这个接口)。

在每次运行客户端软件时,用户最多可以调用 1000 次此 API。我不想一开始就为每个电话发送一封电子邮件。每批通话时间不会超过10分钟。

@api_view(['POST'])
@permission_classes((IsAuthenticated, ))
def record_add(request):                                                      
    """
    Add or update a record.
    """

    # work something out so only only sends one for each batch of calls
    #message = '%s using api' % request.user
    #mail_admins(message, message)

有什么想法可以做到这一点吗?

【问题讨论】:

    标签: python django django-rest-framework


    【解决方案1】:

    在用户表中存储一个email_timeout 值,并在每个请求中检查它。如果当前时间超过了超时时间,设置超时时间为当前超时时间+10分钟并发送邮件,否则跳过邮件。

    【讨论】:

    • 我喜欢。我正在使用自定义用户,所以这很容易。我会试一试。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多