首页 > 代码库 > java 跨域
java 跨域
跨域请求,顾名思义,就是一个站点中的资源去访问另外一个不同域名站点上的资源。 资源可以是一个请求,或一个操作或一个数据流等
出于安全的考虑,如果你要从www.a.com通过Ajax来请求另外一个网站www.b.com的内容,浏览器是不允许你这样做的(不理解这里的安全是指什么?想想如果没有这个限制的话,黑客可以做些什么)。那什么样的情况下算是跨域?域名不同那当然算是跨域了,例如a.com向b.com发送请求,这当然就是跨域了,不允许的。不过子域名不同(例如sub.a.com向www.a.com 发送请求)甚至是同域名不同端口(例如 a.com:80 向a.com:8080 )也算是跨域的。
[转载]java访问跨域站点,返回相应数据
(2012-12-20 18:45:28)
转载▼
标签: 转载 | 分类: 编程 |
原文地址:java访问跨域站点,返回相应数据作者:努力中的宝贝
package com.zssoft.test;
import java.io.*;
import java.net.URL;
import java.net.URLConnection;
public class Test11 {
public static void main(String[] args) throws IOException {
//test4();
// test3();
test2();
// test();
}
public static void test4() throws IOException {
URL url = new URL("http://lavasoft.blog.51cto.com/attachment/200811/200811271227767778082.jpg");
//获得此 URL 的内容。
Object obj = url.getContent();
System.out.println(obj.getClass().getName());
}
public static void test3() throws IOException {
URL url = new URL("http://www.baidu.com");
//返回一个 URLConnection 对象,它表示到 URL 所引用的远程对象的连接。
URLConnection uc = url.openConnection();
//打开的连接读取的输入流。
InputStream in = uc.getInputStream();
int c;
while ((c = in.read()) != -1)
System.out.print(c);
in.close();
}
public static void test2() throws IOException {
URL url = new URL("http://www.baidu.com");
//打开到此 URL 的连接并返回一个用于从该连接读入的 InputStream。
Reader reader = new InputStreamReader(new BufferedInputStream(url.openStream()));
int c;
while ((c = reader.read()) != -1) {
System.out.print((char) c);
}
reader.close();
}
public static void test() throws IOException {
URL url = new URL("http://lavasoft.blog.51cto.com/62575/120430");
//打开到此 URL 的连接并返回一个用于从该连接读入的 InputStream。
InputStream in = url.openStream();
int c;
while ((c = in.read()) != -1)
System.out.print(c);
in.close();
}
}
java 跨域