我试图获取受热链接保护的图像内容。
首先,我尝试使用file_get_contents()在我的本地计算机上的Apache下运行的网站中使用PHP进行操作。看起来它绕过了热链接保护。代码很简单:
$data = file_get_contents($url);
但是,当我尝试在JavaSE应用程序中执行相同操作时,它不起作用,保护不允许我访问该文件。这是代码:
URL url = new URL(imageUrl);
URLConnection connection = url.openConnection();
connection.setRequestProperty("Referer","http://www.example.com");
connection.connect();
InputStream is = connection.getInputStream();
返回403代码。我设置了" Referer"属性到图像所属的同一主机。
那么,为什么会这样呢?什么是file_gets_content和Java代码之间的请求差异?