c# - 如何从 OWIN 启动类中获取 localhost 名称
问题描述
我试图通过在 ASP.NET Web 表单中使用以下代码从 OWIN Startup 类获取主机名。我得到http://127.0.0.1主机名而不是http://localhsot:portnumber。此外,我无法获得真实的主机名,即 www.testsite.com。是否有任何选项可用于从 OWIN Startup 类获取实际主机名?
[assembly: OwinStartup(typeof(Startup))]
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
ExpireTimeSpan = TimeSpan.FromMinutes(10),
SlidingExpiration = true
});
app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);
var host = HttpContext.Current.Request.Url.Host.ToString().ToLower(); <-- I am getting http://127.0.0.1 instead of http://localhsot:portnumber.
var queryString = "";
if (host.Contains("technicolor"))
{
queryString = "1";
}
else if (host.Contains("3") || HttpContext.Current.Request.IsLocal)
{
queryString = "2";
}
else {
queryString = "3"
}
var options = new PingAuthenticationOptions(
pingAuthenticationUrl: ConfigurationManager.AppSettings["Ping::LoginUrl"] + ACSIdx,
pingLogoutUrl: ConfigurationManager.AppSettings["Ping::LogoutUrl"],
certificateFile: certificate,
pingResponseDestination: ConfigurationManager.AppSettings["Ping::DestinationUrl"],
externalLoginCallback: ConfigurationManager.AppSettings["Ping::ExternalLoginCallback"],
samlProcessor: new SamlProcessor());
app.UsePingAuthentication(options);
}
}
解决方案
推荐阅读
- javascript - React js 将 css 转换为 css 以进行反应
- python - 如何解析语法`(a | b)* a`
- string - 在颤振中连接字符串添加“”
- oracle - Oracle REGEXP_SUBSTR 匹配由换行符“\n”分隔的单词
- node.js - 线宽 prittier/eslint airbnb 样式指南的问题
- stored-procedures - 根据条件将变量分配给雪花 SQL
- python - pairplot() 中的相关值
- azure - 如何按租户(在 Azure 中)查询所有密钥保管库?
- javascript - 导航栏折叠时如何更改类?
- abap - 并排结构值比较并显示差异?