Heim > PHP-Framework > Laravel > Hauptteil

Laravel-HTTP-Anfrage: Cookies und hochgeladene Dateien abrufen

齐天大圣
Freigeben: 2020-12-15 09:28:14
Original
1826 Leute haben es durchsucht

COOKIE

Laravel verschlüsselt den Cookie-Wert auf der untersten Ebene und verwendet den Autorisierungscode zur Signatur. Wenn der Client den Cookie-Wert ändert, wird er daher ungültig. Auf diese Weise müssen wir uns keine Sorgen über eine Cookie-Fälschung machen.

Legen Sie den Cookie-Wert fest.

Beim Festlegen des Cookie-Werts wird das Wissen der Laravel-Antwort (Response) verwendet, das hier kurz erläutert wird.

Sie können die Cookie-Funktion verwenden, um ein Cookie zu erstellen und das Cookie dann über die Antwortfunktion an den Client zurückzugeben:

// cookie($name, $value, $minutes, $path, $domain, false, ...);
$cookie = cookie('username', 'php.cn', 3600);
return response('hello laravel')->cookie($cookie);
Nach dem Login kopieren

Zusätzlich zur Verwendung der Cookie-Funktion können Sie auch die Cookie-Methode der Antwortinstanz zum Festlegen verwenden und gib es zurück. Die Parameter dieser Methode und Cookie-Funktion sind konsistent.

return response('Hello World')->cookie(
    'name', 'php.cn', 3600
);
Nach dem Login kopieren

Holen Sie sich den Cookie-Wert

Es gibt zwei Methoden, um den Cookie-Wert zu erhalten. Diese beiden Methoden werden unten gezeigt:

use Illuminate\Http\Request;
$value = $request->cookie('name');
// 或
use Illuminate\Support\Facades\Cookie;
$value = Cookie::get('name');
Nach dem Login kopieren

Holen Sie sich die hochgeladene Datei

Das Laravel-Framework ruft die hochgeladene Datei ab und hält die Datei sehr einfach.

Es gibt zwei Möglichkeiten, hochgeladene Dateien abzurufen: Verwenden Sie die Dateimethode oder die dynamische Attributmethode. Diese Methode gibt eine IlluminateHttpUploadedFile-Instanz zurück.

$logo = $request->file('logo');
// or
$logo = $request->logo;
Nach dem Login kopieren

Natürlich können Sie vor dem Abrufen feststellen, ob die Datei vorhanden ist:

if ($request->hasFile('logo')) {
    $logo = $request->file('logo');
}
Nach dem Login kopieren

Die Anforderungsanforderungsinstanz kann die hochgeladene Datei auch überprüfen:

if ($request->file('logo')->isValid()) {
    //
}
Nach dem Login kopieren

uploadFile Die Instanz verfügt über viele Methoden, um den temporären Speicherpfad, die Erweiterung und andere Informationen der hochgeladenen Datei abzurufen. Im Folgenden wird gezeigt, wie Sie das Dateitypsuffix erhalten: Speichern Sie die Datei mit der Store-Methode. Der erste Parameter gibt den Pfad zum Speichern der Datei ein Der Parameter gibt den Host an, auf dem die Datei gespeichert ist (oder die Plattform eines Drittanbieters). Laravel generiert automatisch eine eindeutige ID als Dateinamen. Diese Informationen befinden sich in der Konfigurationsdatei config/filesystems.php wie folgt:

$logo = $request->file('logo');
$logo->path();  // png
Nach dem Login kopieren

Wenn Sie den Dateinamen zum Speichern der Preisanfragedatei selbst festlegen möchten, müssen Sie die Methode „storeAs“ verwenden der festzulegende Dateiname.

'disks' => [
    'local' => [
        'driver' => 'local',
        'root' => storage_path('app'),
    ],
    'public' => [
        'driver' => 'local',
        'root' => storage_path('app/public'),
        'url' => env('APP_URL').'/storage',
        'visibility' => 'public',
    ],
    's3' => [
        'driver' => 's3',
        'key' => env('AWS_ACCESS_KEY_ID'),
        'secret' => env('AWS_SECRET_ACCESS_KEY'),
        'region' => env('AWS_DEFAULT_REGION'),
        'bucket' => env('AWS_BUCKET'),
        'url' => env('AWS_URL'),
        'endpoint' => env('AWS_ENDPOINT'),
    ],
],
Nach dem Login kopieren

Veröffentlichen Sie abschließend ein vollständiges Beispiel für einen Datei-Upload-Code:

HTML-Code lautet wie folgt:

$request->file('logo')->storeAs('img/logo', '1.png');
Nach dem Login kopieren

Speichern Sie den Dateicode wie folgt:

<form method="post" action="/index?a=32" enctype="multipart/form-data">
    @csrf
    <input type="file" name="logo" >
    <input type="submit" value="sub" />
</form>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonLaravel-HTTP-Anfrage: Cookies und hochgeladene Dateien abrufen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!