我正在尝试捕获传出的HTTP请求并将其替换为另一个。例如,我有一个应用程序向www.xxxxxxxxxx.com/something
发起请求
我需要抓住这个请求而不是去www.xxxxxxxxxx.com/something我必须将它重定向到www.yyyyyyyyyyyy.com/somethingElse.
请求由应用程序发出,我无法访问源代码,因此必须在应用程序之外完成。
任何人都可以暗示如何做到这一点?
答案 0 :(得分:2)
你可以使用fiddler自动应答器
显然,这只有在您拥有对客户端计算机的完全访问权限时才有效。 如果需要从服务器完成此操作,您可以在服务器上设置代理,以将请求转发到其他网页。
查看此博客条目以获取详细信息
此博客文章介绍了如何修改请求,但您可以轻松地将它们转发到其他域。
也可以使用生成的证书在HTTPS上使用此技术 http://www.fiddler2.com/fiddler/help/httpsdecryption.asp
有些人似乎声称这个答案不起作用,我很欣赏他们被提琴手的能力所困惑,但最终他们错了,做你的研究。
更简单的解决方案可能是覆盖您的本地DNS,您可以使用Windows上的HOSTS文件执行此操作,请记住,这会将原始主机标头发送到您可能不需要的其他域。
答案 1 :(得分:1)
使用智能proxy或重写server end上的网址。
答案 2 :(得分:1)
如果请求是从客户端发起的,那么您无法拦截该请求并将用户重定向到其他地址。但是,您可以在HTTP管道中添加HTTPModule,它会在将响应发送到客户端浏览器之前将URL更改为其他地址。
答案 3 :(得分:0)
不,你不能在客户端那样做。
should redirect
www.yyyyyyyyyyyy.com/somethingElse
发出任何请求时,您www.xxxxxxxxxx.com/something
至on the server side
。答案 4 :(得分:0)
这是什么类型的应用程序!通常情况下,如果您有一个像apache,lighttpd,cherokee在其前面或应用程序部署在其上的Web服务器,那么您可以使用URL-Rewritting。
Apache可以做到这一点,甚至可以用于其他服务器。 http://httpd.apache.org/docs/2.0/misc/rewriteguide.html