【发布时间】:2010-11-25 20:11:42
【问题描述】:
给定一个被重定向到第 3 方网站 B 的 URL A,在我的应用程序中,我需要找出给定 URL A 的 URL B 并将其插入 DB,这可以是 Windows 应用程序或 Web 或任何方式使用 C# 更快更容易! 谢谢!
附:我不需要将代码插入数据库。
【问题讨论】:
-
取决于重定向的工作方式。服务器端?客户端(即 JS)?尝试使用 C# 具有的任何 http 包装器获取 URL,并遵循任何 301s/302s。如果你幸运的话,甚至可能有一个图书馆可以为你做这件事。如果 B 重定向到 C 怎么办?您要存储 B 还是 C?您将遵循重定向多远?如果 C 重定向到 B 怎么办?通过跟踪您访问过的地址或设置重定向限制(我认为这是 Firefox/Chrome 处理此问题的方式),确保避免无限重定向循环。
-
服务器端的例子很好......这只是一个提取数据的工具(即最终 URL),所以不必花哨......可以以任何方式完成! “A”将始终重定向到“B”,并且不再有重定向发生,这是一个既定事实。
-
客户端代码也没有什么坏处......我假设一个带有 IE 实例的 win 表单应用程序应该可以完成这项工作......只是不确定
-
简单来说,您想知道用户从哪里来并落入您的网站?而已? Request.ServerVariables("HTTP_REFERER")?
-
只是为了澄清这是 jsuta 工具假设我有一个 URL www.abc.com 当在内部(从他们自己的服务器)键入时重定向到第 3 方站点,即 www.def.com 和两者URL 与我自己的网站没有任何关联...在工具中,我应该给它第一个 URL,即 www.abc.coma,它应该给我的结果是 www.def.com,就是这样!推荐人 wlogic 仅在最终 URL 是我自己的站点的情况下才有效,而事实并非如此。