模拟 HttpPost 请求发送后,对面重定向了,如何获取其 URL?

2016-11-25 10:50:49 +08:00
 Adia

原帖在这里

先谢过为敬!

3607 次点击
所在节点    Java
6 条回复
scnace
2016-11-25 12:56:25 +08:00
从 CookieJar 里拿(不造 Java 里面有没有
nicevar
2016-11-25 13:07:51 +08:00
location 里面找
yidinghe
2016-11-25 13:10:47 +08:00
http header 里面有重定向地址,楼主不妨顺便了解下 http 协议相关知识
eoo
2016-11-25 15:15:56 +08:00
想抓包看看是从 header 跳 还是从 js 跳
missdeer
2016-11-25 15:41:50 +08:00
http client 应该有设置不自动重定向的选项,每次重定向时调用你的回调之类的
xsh
2016-11-25 16:10:00 +08:00
php curl 取最终地址的方式,可以做一个参考(前提是结果中有 header 头信息):

$content = curl_exec($ch);
$retVal = array();
$fields = explode("\r\n", @preg_replace_callback('/\x0D\x0A[\x09\x20]+/', 'a', $content));
foreach( $fields as $field ) {
if( preg_match('/([^:]+): (.+)/m', $field, $match) ) {
$match[1] = @preg_replace_callback('/(?<=^|[\x09\x20\x2D])./', 'b', strtolower(trim($match[1])));
if( isset($retVal[$match[1]]) ) {
$retVal[$match[1]] = array($retVal[$match[1]], $match[2]);
} else {
$retVal[$match[1]] = trim($match[2]);
}
}
}
if(!is_array($retVal)) {
return false;
}
return $retVal['location'];

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/323178

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX