2009-03-09 3 views
0

Flash 8 FileReference API дает возможность периодически проверять на количество байтов, передаваемых:Flash 8 FileReference и файл проверки целостности

listener.onProgress = function(file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void { 
    trace("onProgress with bytesLoaded: " + bytesLoaded + " bytesTotal: " + bytesTotal); 
} 

(более подробная информация here и here)

В случае upload, вы бы предложили использовать этот метод для проверки целостности загруженного файла?

ответ

0

Просто слушайте событие onComplete, чтобы проверять, когда файл загружен правильно. Если ошибок не было, пока файл должен быть быть на сервере.

Если вы не хотите доверять FlashPlayer относительно integrety из отправленного файла (например, ваш сервер не перемещая его из папки/TMP и т.д.), то, скорее всего, будет необходимо, чтобы убедиться, что процедура закончен правильно:

  • Проверьте размер файла (лучше всего будет контрольная сумма, не думаю, что вы можете получить это, хотя) на стороне клиента.
  • Оставить эту информацию в запросе загрузки файла.
  • После получения полученных данных собирайте ту же информацию (размер, контрольную сумму) на стороне сервера из полученного файла и сравните ее с информацией, созданной на стороне клиента.
  • Отправить обратно статус (невыполнению/успеха)

... Если ваше приложение не очень разумным, я бы пропустить это, хотя, как раз по той простой причине, что он может генерировать больше проблем, чем если бы вы не получили любая проверка целостности вообще:)

Лучше: в зависимости от отправляемого файла вы можете узнать сценарий сервера, чтобы проверить, выглядит ли файл в порядке и просто отправить статус в зависимости от этого.