【问题标题】:Getting the url of the current request获取当前请求的url
【发布时间】:2014-01-16 07:05:11
【问题描述】:

我有一个学生注册页面,并在提交记录后发送电子邮件激活链接。我已经包含了激活链接,但它会获取整个 url 并将其包含在电子邮件中。有人可以展示如何解决这个问题,因为它目前在电子邮件中发送整个页面 url?以下是发送到电子邮件的示例:

localhost:89192/Staff/Register.aspx?rwndrnd=0.6363636646446373333CompleteRegistration.aspx?id=8901b88k1-81fa-8u10-m96e-892f6aea6710

下面是获取当前网址的方法

activationUrl = HttpContext.Current.Request.Url.Host+""+"://CompleteAccount.aspx?id=" + id.ToString();

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    简单使用

    activationUrl = Request.Url.AbsoluteUri
    

    另外,Request.Url.ToString() 返回完整的 url(包括查询字符串)

    【讨论】:

    • 这为我获取了当前在页面注册中的整个 url,但我需要通过仅获取 url+激活链接这种格式来包含 url+激活页面..localhost:89192/CompleteRegistration.aspx?id=8901b88k1-81fa-8u10-m96e-892f6aea6710
    • 您当前的url 是什么,您的预期结果是什么?
    • 下面是我当前的 url,显示当我使用 activationUrl = Request.Url.AbsoluteUri http://localhost:89192/Staff/Register.aspx?rwndrnd=0.6363636646446373333 我的 expexted 结果是在发送电子邮件链接时包含我的激活页面,即CompleteRegistration.aspx?id=8901b88k1-81fa-8u10-m96e-892f6aea6710。url 更改有时已经发布了它。我是硬编码,但我现在需要它来包含当前 url+激活页面链接
    • 不清楚您的评论,如果您想更改网址,请尝试Response.Redirect("~/CompleteRegistration.aspx?id=8901b88k1-81fa-8u10-m96e-892f6aea6710");
    • 这就是我的意思,我有一个名为激活帐户的页面和另一个名为注册的页面。当一个人注册时,会向他发送一封电子邮件,其中包含链接到激活帐户的 URL。我的应用程序运行本地在我的机器上并且也发布了它,我也有那个链接。我需要它以这样的方式运行,如果我在远程服务器上运行它,它也会选择那个 url。我已经编码但我需要始终选择货币 url,无论是本地 url 地址还是远程 url。我希望这能给你带来启发
    猜你喜欢
    • 2017-04-11
    • 1970-01-01
    • 2014-04-01
    • 1970-01-01
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-19
    相关资源
    最近更新 更多