用户名和密码来自以下网址:
https://theuser:thepassword@localhost:20694/WebApp
答案 0 :(得分:3)
创建Uri
,然后获取UserInfo
属性:
var uri = new Uri("https://theuser:thepassword@localhost:20694/WebApp");
Console.WriteLine(uri.UserInfo); // theuser:thepassword
如果有必要,您可以在:
上拆分,如下所示:
var uri = new Uri("https://theuser:thepassword@localhost:20694/WebApp");
var userInfo = uri.UserInfo.Split(':');
Console.WriteLine(userInfo[0]); // theuser
Console.WriteLine(userInfo[1]); // thepassword
请注意,如果您尝试在ASP.NET请求的上下文中获取当前用户,则最好使用提供的API,例如HttpContext.User
:
var userName = HttpContext.Current.User.Identity.Name;
或者,如果这是在网络表单中,只需:
protected void Page_Load(object sender, EventArgs e)
{
Page.Title = "Home page for " + User.Identity.Name;
}
else
{
Page.Title = "Home page for guest user.";
}
}
至于密码,我建议您在用户通过身份验证后不要直接处理密码。
答案 1 :(得分:0)
var str = @"https://theuser:thepassword@localhost:20694/WebApp";
var strsplit = str.Split(new char[] {':', '@', '/'};
var user = strsplit[1];
var password = strsplit[2];
答案 2 :(得分:0)
您可以使用以下方法获取当前的uri
string uri = HttpContext.Current.Request.Url.AbsoluteUri; //as u targeted .net
然后将其解析为普通字符串。
您将收到以下字符串:
https://theuser:thepassword@localhost:20694/WebApp
您可以通过将字符串分成几部分来获取您要搜索的信息。
var uri = "https://theuser:thepassword@localhost:20694/WebApp";
var currentUriSplit = uri.Split(new [] { ':', '@', '/' });
var user = currentUriSplit[3];
var password = currentUriSplit[4];