我对 Dropbox PHP SDK 有疑问。几分钟后我有异常:'操作太慢了。过去 10 秒的传输速度低于 1024 字节/秒。我想它可能与 PHP 配置有关。我可以毫无问题地上传 100MB 的文件,但我无法上传更大的文件。我正在使用 chunkUploader(5MB 块)和 ng-file-upload
public function store(Request $request)
{
$chunk_number = (int)$request->input('_chunkNumber');
$chunk_size = (int)$request->input('_chunkSize');
$total_size = (int)$request->input('_totalSize');
$file = $request->file('file');
$file_content = file_get_contents($file->getRealPath());
$total_chunks = floor($total_size/$chunk_size);
//First chunk
if($chunk_number == 0){
$id = Dropbox::chunkedUploadStart($file_content);
$expires_at = Carbon::now()->addMinutes(60);
Cache::put('id', $id, $expires_at);
}
//Add new chunk
if($chunk_number > 0 && $chunk_number <= $total_chunks){
Dropbox::chunkedUploadContinue(Cache::get('id'), $chunk_number*$chunk_size, $file_content);
}
//Finish upload
if($chunk_number == $total_chunks){
Dropbox::chunkedUploadFinish(Cache::get('id'), '/file', Dropbox\WriteMode::add());
}
}
堆栈跟踪:{main}
[2016-03-25 10:37:27] local.ERROR:异常 'Dropbox\Exception_NetworkIO' 并带有消息“执行 HTTP 请求时出错:操作太慢。在 /Users/x/Workspace/ez_api/vendor/dropbox/dropbox-sdk/lib/Dropbox/Curl.php:73 中的最后 10 秒传输不到 1024 字节/秒 堆栈跟踪:/Users/x/Workspace/ez_api /vendor/dropbox/dropbox-sdk/lib/Dropbox/Client.php(719): Dropbox\Curl->exec()
/Users/x/Workspace/ez_api/vendor/dropbox/dropbox-sdk/lib/Dropbox/Client.php(548): Dropbox\Client->_chunkedUpload(Array, '\x00\x00\x00\x00\x00\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00...')
/Users/x/Workspace/ez_api/vendor/graham-campbell/manager/src/AbstractManager.php(234): call_user_func_array(Array, Array)
/Users/x/Workspace/ez_api/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(216): GrahamCampbell\Manager\AbstractManager->__call('chunkedUploadSt...', Array)
/Users/x/Workspace/ez_api/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(216): GrahamCampbell\Dropbox\DropboxManager->chunkedUploadStart('\x00\x00\x00\x00\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...')
/Users/x/Workspace/ez_api/app/Http/Controllers/AttachmentController.php(58): Illuminate\Support\Facades\Facade::__callStatic('chunkedUploadSt...', Array)
/Users/x/Workspace/ez_api/app/Http/Controllers/AttachmentController.php(58): GrahamCampbell\Dropbox\Facades\Dropbox::chunkedUploadStart('\x00\x00\x00\x00\x00\x00\x00\x00 \x00\x00\x00\x00\x00\x00\x00...')
/Users/x/Workspace/ez_api/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(256): call_user_func_array(Array, Array)
/Users/x/Workspace/ez_api/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(164): Illuminate\Routing\Controller->callAction('store', Array)