ajax - Bagaimana untuk mengesahkan bahawa fail gumpalan adalah imej dalam laravel?
仅有的幸福
仅有的幸福 2017-05-16 16:49:55
0
3
713

Jika borang dihantar dengan cara biasa, tiada masalah dengan pengesahan latar belakang:

$file = $request->avatar; $input = array('image' => $file); $rules = array( 'image' => 'image' ); $validator = \Validator::make($input, $rules); if ( $validator->fails() ) { return \Response::json([ 'success' => false, 'errors' => $validator->getMessageBag()->toArray() ]); }

Namun, apabila diserahkan menggunakan objek formData, fail imej ditukar menjadi fail gumpalan dan tidak boleh disahkan:

$('#uploadAvatar').on('click', function (e) { $('#uploadAvatar').html('正在保存...'); $("#image").cropper('getCroppedCanvas').toBlob(function (blob) { var formData = new FormData(); formData.append('croppedImage', blob); $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); $.ajax({ type: "POST", url: "{{ url('/avatar') }}", processData: false, contentType: false, cache: false, data: formData }).done(function (response) { showResponse(response); }).fail(function (data) { alert('提交失败,请尝试重新提交'); }); }); });

Bagaimana latar belakang boleh mengesahkan bahawa fail gumpalan ialah imej?

仅有的幸福
仅有的幸福

membalas semua (3)
过去多啦不再A梦

Sangat mudah bukan untuk membuat pembolehubah sementara dan memulihkannya?
$file = file_put_contents('/path/to/new/file_name', $blob);

    phpcn_u1582

    Peraturan pengesahan lanjutangetimagesize

      大家讲道理

      Anda boleh menggunakan penstriman base64

        Muat turun terkini
        Lagi>
        kesan web
        Kod sumber laman web
        Bahan laman web
        Templat hujung hadapan
        Tentang kita Penafian Sitemap
        Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!