【发布时间】:2021-06-29 21:16:57
【问题描述】:
如何在 Django 中全局存储变量,以便我可以访问所有 Django 文件中的变量?
例如,当在 views.py 中将变量声明为全局变量时,它在其他文件(包括 routing.py>consumers.py)中没有相同的内存。注意:我正在使用 websockets 和通道。
要存储的变量是一个包含类(客户端)及其单独套接字连接(不是 websocket)的列表,因此无法将其存储在数据库中。
我正在制作一个反向 shell 的网络版本。然后受害者/客户端将连接到服务器,我将能够通过套接字连接向他们发送命令。它在常规终端中运行良好,因为它是我一开始创建项目的地方。
有人知道怎么做吗?
all_clients = []
class Client():
def __init__(self, clientSocket, name, ip, port, permission, time_when_connected):
self.clientSocket = clientSocket
self.name = name
self.ip = ip
self.port = port
self.permission = permission
self.time_when_connected = time_when_connected
【问题讨论】:
-
为什么不能把这个变量写入数据库?您是否考虑过会话:docs.djangoproject.com/en/dev/topics/http/sessions?
-
@Someprogammer 这行得通吗,所以它不仅仅是网页的每个访问者?即使其他人访问该页面,数据也必须保持一致。