Estoy tratando de cargar un archivo en el depósito de AWS s3
public function fileTest(Request $request) { //this will create folder test inside my bucket and put the contents $request->file->store('test','s3'); } Pero el código anterior creará una carpeta llamada test dentro de mi depósito y colocará el archivo en ella.
Pero quiero subir directamente al cubo
$request->file->store('s3');Probé el código anterior pero no funcionó.
Resolvió mi problema con el siguiente
$s3 = Storage::disk('s3'); $s3->put('',$request->file);Taquigrafía
Storage::disk('s3')->put('',$request->file)
public function uploadFile (Request $request) { $file = $request->file('file'); $imageName = 'uploads/' . $file->getClientOriginalName(); Storage::disk('s3')->put($imageName, file_get_contents($file)); Storage::disk('s3')->setVisibility($imageName, 'public'); $url = Storage::disk('s3')->url($imageName); return Response::json(['success' => true, 'response' => $url]); }Pon tu archivo en el servidor s3
$agreement_contract_copy = $request->file('agreement_contract'); $filename = $id. '/agreement' . '_' . time() . '.pdf'; $student->agreement_copy = $filename; $student->save(); Storage::disk('s3')->put($filename, file_get_contents($agreement_copy));Si no puede definirlo como público, por defecto su tienda es privada y cuando usa un método privado, en el archivo que obtiene el tiempo se usa el método temporal como se muestra a continuación. Obtenga su archivo
Storage::disk('s3')->temporaryUrl ($student->agreement_copy, \Carbon\Carbon::now()->addMinutes(5))$estudiante->acuerdo_copia
Probado