У меня есть php-скрипт на моем сервере, который заставляет скачивать, когда задан правильный ключ. Я хочу загрузить файл, который скрипт загружает, а не сам сценарий, используя java. Я вижу вопросы, которые отвечают, как загрузить файл, который находится на определенном URL-адресе, но не как загрузить файл, принудительно с помощью скрипта. Также можно было бы маршрутизировать загрузку по определенному пути вместо того, чтобы она попала в папку загрузки компьютера или куда бы она не переместилась автоматически? Здесь мой соответствующий php-скрипт:
header("Content-type: application/force-download");
header("Content-Disposition: attachment; filename=\"" . str_replace(" ", "_", $arrRES['file']) . "\"");
echo $strFile;
и java будет что-то вроде:
URL url= new URL("http://supremesharkbot.com:8080/update/?key="+activationkey);
но тогда я не знаю, куда идти оттуда. благодаря
Я подозреваю, что проблема здесь:
echo $strFile;
Я бы посоветовал использовать file_get_contents()
(http://php.net/manual/en/function.file-get-contents.php)
$strFile = file_get_contents($arrRES['file']);
echo $strFile;
Я также предлагаю заголовки, которые лучше всего подходят для каждого типа файла. Не пытайтесь принудительно загрузить, пусть пользователь или их предпочтение определяют ho9w для обработки файла. Может сделать тип файла более общим, поэтому браузер будет запрашивать чаще:
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"" . str_replace(" ", "_", $arrRES['file']) . "\"");
header("Content-Length: " . filesize($arrRES['file']));
$strFile = file_get_contents($arrRES['file']);
echo $strFile;