Зарегистрированная учетная запись домена jquery - PullRequest
1 голос
/ 13 марта 2009

Как получить зарегистрированное имя пользователя с помощью jquery?

Я использую ASP.Net и делаю это в следующем коде:

System.Web.HttpContext.Current.Request.ServerVariables["AUTH_USER"].ToString();

Я пытаюсь аутентифицировать пользователя, используя имя домена для входа, и использовать веб-сервис для аутентификации.

<script type="text/javascript">
    //<![CDATA[
$(document).ready(function() {

    $.ajax({ type: "POST",
    url: "DemoWebService.asmx/GetFulName",
    dataType: "xml",
    data: "networkId=" + arg1,
        processData: false,
        error: function(XMLHttpRequest, textStatus, errorThrown) { ajaxError(XMLHttpRequest, textStatus, errorThrown); },
        success: function(xml) { ajaxFinish(xml); }
    });

});
    function ajaxFinish(xml) {
        // parse the object
    }

    function ajaxError(xmlObj, textStatus, errorThrown) {
        // Comment this out for live environments, and put a friendly error message
        alert("(Ajax error: " + txt + ")");
        alert(request.responseText);
    }

//]]>
</script>


[WebMethod]
public string GetFulName(string networkId)
{
    return networkId + "Full Name";
}

Ответы [ 2 ]

1 голос
/ 14 марта 2009

Поскольку серверная переменная Auth_User не работала на клиенте, я могу изменить свой WebMthod, чтобы получить зарегистрированное имя пользователя:

[WebMethod]
public string GetFulName(string networkId)
{
    //return networkId + " Full Name";
    return networkId + " From Server: " + System.Web.HttpContext.Current.Request.ServerVariables["AUTH_USER"].ToString();
}
1 голос
/ 13 марта 2009

Вы можете установить переменную javascript в разметке aspx с именем пользователя, например, так:

<script type="text/javascript">
    var username = "<%= User.Identity.Name %>";
</script>

См. http://msdn.microsoft.com/en-us/library/system.security.principal.iidentity_members.aspx для получения дополнительной информации о User.Identity.Name.

...