2016-06-25 6 views
0

Я загрузив пакет активов, используя следующий код:Как принудительно загрузить единый пакет активов, используя php?

<?php 
$file_url = "AssetBundle/bundle-numb"; 
header("Content-Type: application/zip"); 
header("Content-Disposition: attachment; filename=".basename($file_url)); 
readfile($file_url); 
>? 

Однако только некоторые байты получить загружены, и когда я открываю файл я получаю сообщение об ошибке говорящего

filesize(): stat failed for .... 

Когда я пытаюсь то же самое код для загрузки других файлов работает отлично, но не с пакетами активов.

Ассортимент активов LZMA сжимается по умолчанию, и я думаю, что в пакетах активов нет каких-либо расширений файлов.

Загрузка отлично работает, когда я использую следующие непосредственно в браузере:

http:XXXXXXXXXX.com/AssetBundle/bundle-numb 
+0

Этот вопрос не является полным. Где вы загружаете файл? Вы пытаетесь загрузить приложение Asset in Unity? – Programmer

+0

Я буду первым, я проверю, работает ли он в браузере или нет, и это не так. –

+0

Что я могу сделать, чтобы решить эту проблему @Programmer? –

ответ

0

Я думаю, я нашел решение с использованием PHP

<?php 
$fileName = basename('bundle-rainbow'); 
$filePath = 'AssetBundles/'.$fileName; 
if(!empty($fileName) && file_exists($filePath)){ 
    // Define headers 
    header("Cache-Control: public"); 
    header("Content-Description: File Transfer"); 
    header("Content-Disposition: attachment; filename=$fileName"); 
    header("Content-Type: application/zip"); 
    header("Content-Length:".filesize($filePath)); 
    header("Content-Transfer-Encoding: binary"); 

    // Read the file 
    readfile($filePath); 
    exit; 
}else{ 
    echo 'The file does not exist.'; 
    echo $fileName; 
} 
?> 
    // Read the file 
    readfile($filePath); 
    exit; 
}else{ 
    echo 'The file does not exist.'; 
    echo $fileName; 
} 
?> 

 Смежные вопросы

  • Нет связанных вопросов^_^