【问题标题】:How to display user computer display name in #Djangos, #python如何在#Djangos、#python 中显示用户计算机显示名称
【发布时间】:2018-11-27 07:06:18
【问题描述】:

抱歉,如果查询重复,我无法在此处找到我的问题的答案。

我在开发服务器中托管的 Django 中开发了一个网页。开发框之外的任何人都可以访问网页。 requiremnet: 当用户访问网站时,右上角 corener 我想显示用户计算机名。(注意:我不是要求用户注册)。

我在下面编写了获取用户名的代码,但它总是从开发框中显示管理员显示名称。

如何在我的局域网中打开网页时获取用户计算机名称。

///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>

【问题讨论】:

标签: django


【解决方案1】:

我认为这是不可能的。你提到局域网,所以我假设它只适用于本地用户?如果是这样,您可以为网络上的每台计算机创建一个字典,将它们的 IP 与其计算机名称甚至用户相关联。

获取他们的 IP 要容易得多。

ip = request.META.get('HTTP_X_FORWARDED_FOR')

虽然不可靠。

关于这个主题的一些其他答案:

Get domain/host

Getting IP

【讨论】:

  • 嗨斯蒂芬,可能是我的要求混淆了。我们使用 Django 开发了网站。该网站对我组织中的任何人开放,无需任何身份验证即可访问。没有 AD 也没有 LDAP 连接。要捕获正在访问我的网站的用户并在网页上显示用户全名,我需要破解代码。以确保任何解决方案都会受到高度重视。
猜你喜欢
  • 1970-01-01
  • 2023-03-26
  • 2016-04-13
  • 1970-01-01
  • 2020-02-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多