很抱歉,如果重复查询,我无法在此处找到问题的答案。
我用托管在开发服务器中的Django开发了一个网页。在开发箱之外的任何人都可以访问该网页。 requiremnet:在用户访问网站时,右上角的核心人员我想显示用户计算机的名称。(注意:我不是在要求用户注册)。
我在下面编写了获取用户名的代码,但它总是从开发框中显示管理员显示名称。
如何在局域网中打开网页的地方获取用户计算机名称。
///view.py
import ctypes
def get_display_name():
GetUserNameEx = ctypes.windll.secur32.GetUserNameExW
NameDisplay = 3
size = ctypes.pointer(ctypes.c_ulong(0))
GetUserNameEx(NameDisplay, None, size)
nameBuffer = ctypes.create_unicode_buffer(size.contents.value)
GetUserNameEx(NameDisplay, nameBuffer, size)
return(nameBuffer.value)
def home_page(request):
context = {
"username":request.user.username,
}
return render(request,"default.html", context)
//default.html
<div>{{username}}</div>
答案 0 :(得分:0)
我认为不可能。您提到的是局域网,所以我假设它仅适用于本地用户?如果是这样,您可以为网络上的每台计算机创建一个词典,将其IP与它们的计算机名称甚至用户名相关联。
开始获取他们的IP要容易得多。
ip = request.META.get('HTTP_X_FORWARDED_FOR')
尽管不可靠。
有关此主题的其他答案: