缓存一个使用Django的Google Apps Provisioning API登录对象

2024-05-03 04:49:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个Django站点,它使用provisionapi从googleapps中提取电子邮件组。我有点像:

import gdata.apps.groups.client

client = gdata.apps.groups.client.GroupsProvisioningClient(domain="example.com")
client.ClientLogin('email', 'password', source='apps')

登录需要一段时间,所以我用ajax调用异步检索。它是占用大部分时间的登录调用,需要对多个视图执行。例如:一个视图呈现可用组的列表,另一个视图呈现选定组的成员。你知道吗

我想知道在Django中是否有一种方法可以持久化这样一个客户机对象,以便它可以在多个视图中使用?你知道吗


Tags: appsdjangoimportcomclient视图站点example
1条回答
网友
1楼 · 发布于 2024-05-03 04:49:18

如果将GroupsProvisioningClient实例设置为模块级全局实例,并使用实用程序函数获取该实例,如:

CLIENT = GroupsProvisioningClient(domain="example.com")
def get_gapps_client():
    if not CLIENT.is_authenticated() # made up function!
       CLIENT = CLIENT.ClientLogin('email', 'password', source='apps')
    return CLIENT

相关问题 更多 >