私はLaravelを使用しています5.3
、
私はjavascriptで画像をトリミングし、ajaxでアップロードします。
トリミングされた画像は、アップロード時にblobファイルに変更されます。BLOBファイルをチェックする方法はLaravelの画像ですか?
しかし、バックエンドでは、BLOBファイルを確認する方法はイメージですか?
public function changeAvatar(Request $request)
{
$user = \Auth::user();
$blob = $request->croppedImage;
$destinationPath = 'images/uploads/';
$fileName = $user->id . '_' . time() . '.png';
$file = file_put_contents($destinationPath.$fileName, $blob);
$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()
]);
}
$user ->avatar = '/'.$destinationPath.$fileName;
$user ->save();
return \Response::json([
'success'=>true,
'avatar'=>asset($destinationPath.$fileName),
]);
}
ファイルはイメージですが、エラーは次のように常にある:
{"success":false,"errors":{"image":["image must be an image."]}}
ErrorException: をsymfonyの\コンポーネントの引数2がありませんが、\ HttpFoundation \にUploadedFile \ファイルDに呼ば:: __構築物()、:\ WNMP \ WWW \ laravel -5-3-dev \ app \ Http \ Controllers \ UsersController.php 28行目で定義済み – zwl1619
申し訳ありません。引数2は "originalName"です。ダミーの文字列を供給しても問題ありません。 –