请问:如何得到一个url重定向后的url?

webflier 2004-11-20 08:41:35
比如一个url:
http://community.csdn.net/Expert/TopicView1.asp?id=3563002
它重定向后的url是:
http://community.csdn.net/Expert/topic/3563/3563002.xml?temp=.4097559
我怎么根据前者得到后者?
我目前的解决方法是用idhttp的get(),然后在OnRedirect中取得重定向后的url,但是这样的话,idhttp的get会把url对应的内容都下到本地来,而且特耗资源。
各位大虾,有没有什么好方法?最好少用控件。谢谢了!^_^
...全文
162 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
webflier 2004-11-22
  • 打赏
  • 举报
回复
谢谢ehom!!!
ehom 2004-11-21
  • 打赏
  • 举报
回复
OnRedirect中取啊,就跟你自己的方法基本一样~~~区别就是服务器只返回HTTP头

当然自己在WinSock基础上封装HTTP可以灵活的多,收到Location后,马上可以终止数据接收,不过好像意义不大...
webflier 2004-11-21
  • 打赏
  • 举报
回复
tidhttp.head是一个procedure阿,只带一个参数,他返回的东西放在哪里了?
声明:procedure TIdCustomHTTP.Head(AURL: string)
ehom 2004-11-21
  • 打赏
  • 举报
回复
用控件肯定没那么灵活,把Get换成Head差不多就能满足你的基本需求吧,当然我是建议你去看下WinSock和HTTP的资料~~~
xfgncit98 2004-11-21
  • 打赏
  • 举报
回复
不知道,帮你up!
webflier 2004-11-21
  • 打赏
  • 举报
回复
谢谢ehom
如何才能取得http头呢?呵呵。
zwb666 2004-11-21
  • 打赏
  • 举报
回复
学习
ehom 2004-11-20
  • 打赏
  • 举报
回复
很简单,你取它的HTTP头,里面有一条

Location: /Expert/topic/3563/3563002.xml?temp=.4097559
brallow 2004-11-20
  • 打赏
  • 举报
回复
帮你UP好了。
我想知道你这种定向可以从什么角度来监测了?如果你能够得到HTML的原本不是一样的吗?

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧