1. 我在本地电脑上跑起一个java项目,然后现在想让外网访问,一直访问不了··· 查看一下,8080端口没有开启
你这不仅仅是端口的事!第一,如果你用的是ip地址访问显然不行,因为你用的是内网ip!
第二,如果你自己设置了域名那也不行,外部的dns是无法映射的!
所以你的本地机器直接连外网,并需直接使用独立的外网ip才可以,才考虑一下端口问题,那都是小事!
2. 怎样通过java使用socks代理访问服务器
packagetest;
importjava.io.IOException;
importjava.util.Date;
importorg.apache.commons.httpclient.HttpClient;
importorg.apache.commons.httpclient.HttpException;
importorg.apache.commons.httpclient.UsernamePasswordCredentials;
importorg.apache.commons.httpclient.auth.AuthScope;
importorg.apache.commons.httpclient.methods.PostMethod;
publicclasstest
{
publicstaticvoidmain(Stringargs[])
{
HttpClienthc=newHttpClient();
System.out.println("开始时间:"+System.currentTimeMillis());
for(inti=0;i<=100;i++)
{
try
{
//每10秒才会保存一次
Thread.sleep(12000);
}catch(InterruptedExceptione1)
{
//TODOAuto-generatedcatchblock
e1.printStackTrace();
}
Dated=newDate();
PostMethodpm=newPostMethod(
"http://www.tongaichina.com/post.asp?type=int&name=click&time="
+d.getTime());
try
{
//这里写代理地址及端口
hc.getHostConfiguration().setProxy("代理地址",端口);
//这里是用户名与密码
=(
"用户名","密码");
hc.getState().setProxyCredentials(AuthScope.ANY,creds);
hc.executeMethod(pm);
System.out.println(pm.getResponseBodyAsString());
}catch(HttpExceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();
}catch(IOExceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
System.out.println(i);
}
System.out.println("结束时间:"+System.currentTimeMillis());
}
}
3. java使用代理访问网络的几种方法
使用Proxy来对每个连接实现代理, 这种方法只能在jdk 1.5以上的版本使用(包含jdk1.5), 优点是可以单独的设置每个连接的代理, 缺点是设置比较麻烦:
public static void main(String[] args) {
try {
URL url = new URL("http://www..com");
// 创建代理服务器
InetSocketAddress addr = new InetSocketAddress("192.168.0.254",
8080);
// Proxy proxy = new Proxy(Proxy.Type.SOCKS, addr); // Socket 代理
Proxy proxy = new Proxy(Proxy.Type.HTTP, addr); // http 代理
// 如果我们知道代理server的名字, 可以直接使用
// 结束
URLConnection conn = url.openConnection(proxy);
InputStream in = conn.getInputStream();
// InputStream in = url.openStream();
String s = IOUtils.toString(in);
System.out.println(s);
} catch (Exception e) {
e.printStackTrace();
}
}
不是很详细, 有什么问题还望大家指正
4. android里的app怎么通过代理上网
android APP一般情况下通过代理才能连接到外网的网络,使用android 模拟器是连接不上网的,虽然在模拟器里面设置了代理服务器的IP和端口后,可以模拟器的浏览器可以连上网了,在模拟其中设置网络代理请参看下面代码
Proxy proxy=new Proxy(java.net.Proxy.Type.HTTP,new InetSocketAddress("10.0.0.172",80));
HttpURLConnection connection=(HttpURLConnection) url.openConnection(proxy);
这是java.net包的联网方式。还可以用Apache的HttpClient连接网络。
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpHost proxy = new HttpHost("10.0.0.172", 80);
httpClient.getParams().setParameter(ConnRouteParams.DEFAULT_PROXY, proxy);