2023-03-07 11:54来源:m.sf1369.com作者:宇宇
302是http重定向地址,你在命令行wget这个地址跟踪得到跳转后的地址,直接请求跳转后地址。
package com.zuidaima;
import java.net.HttpURLConnection;
import java.net.URL;
/**
* 如何通过HttpURLConnection得到http 302的跳转地址
*
* @author javaniu
*
*/
public class Http302 {
public static void main(String[] args) {
try {
String url = url;
System.out.println(访问地址: + url);
URL serverUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection) serverUrl
.openConnection();
conn.setRequestMethod(GET);
// 必须设置false,否则会自动redirect到Location的地址
conn.setInstanceFollowRedirects(false);
conn.addRequestProperty(Accept-Charset, UTF-8;);
conn.addRequestProperty(User-Agent,
Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.8) Firefox/3.6.8);
conn.addRequestProperty(Referer, url);
conn.connect();
String location = conn.getHeaderField(Location);
serverUrl = new URL(location);
conn = (HttpURLConnection) serverUrl.openConnection();
conn.setRequestMethod(GET);
conn.addRequestProperty(Accept-Charset, UTF-8;);
conn.addRequestProperty(User-Agent,
Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.8) Firefox/3.6.8);
conn.addRequestProperty(Referer, url);
conn.connect();
System.out.println(跳转地址: + location);
} catch (Exception e) {
e.printStackTrace();
}
}
}
你是想让用户显式打开还是隐式,就是说,需不需要让用户看到或者知道用户打开了这个页面,如果不需要用户看到只是程序访问这个页面的话,那方法多的是啊,,
比如说,php里面的file_get_contents,curl等函数,在页面里可以用js打开。
打js出来吧