gpt4 book ai didi

javascript - 如何在 Global.asax 中获取 Angular View 的完整 url

转载 作者:行者123 更新时间:2023-11-28 00:41:33 27 4
gpt4 key购买 nike

在 ASP.NET MVC 应用程序中,有 Request.Url访问Global.asax中的url 。

但是对于 Angular 应用程序,其 url 类似于 http://domain/#/homeRequest.Url我们从Application_BeginRequest获得或Application_EndRequesthttp://domain/ 。 Angular 路线不包括在内。

这是合理的,因为这些路由是在客户端添加的。但是MVC服务器端是否可以获取真实url的值呢?

<小时/>

更新:

刚刚选择了 Matteo 的答案作为正确答案。让我澄清一下。

我一直在尝试这个只有一个目的:重写我的网址。

以前我经常查Request.ApplicationPath并使用字符串函数或内置工具(如 VirtualPathUtility)操作 url .

对哈希部分的需求是有效的,因为查询字符串参数附加在那里。例如,我有一个像这样的网址:

http://[domain]/#/pay/cancel?paymentId=[some guid]

传统智慧让我想到Global.asax访问这些查询参数。我没有找到。哈希标签后面的所有内容都会被方便地忽略。

所以正确的方法是在客户端代码中处理这部分url。我正在使用ui-router 。因此,对于 url 重写/重定向,请使用 stateProvider.when(oldUrl, newUrl); 。要访问查询参数,请使用 $state.params .

经验教训:清晰思考并以不同的心态处理不同的问题。

最佳答案

没有办法,因为 url 的“哈希”部分实际上并不是 url 的一部分。您是否曾经在页面中使用过 anchor 来创建索引?概念是一样的。

无论如何,我无法想象哈希部分如何在服务器端有用。我的猜测是,您认为它很有用,因为您处理问题的方式是错误的。

如果您用更多详细信息补充您的问题,例如您想要实现的目标,我们很有可能为您提供合适的解决方案。

关于javascript - 如何在 Global.asax 中获取 Angular View 的完整 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27862823/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com