...
✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

Kuidas videot YouTube’i üles laadida Laraveli rakenduses

24

Hiljuti küsis üks meie lugejatest, kuidas Laraveli rakendusest YouTube’i video üles laadida. Nad tahtsid luua süsteemi, mis saaks YouTube’i videoid üles laadida rakenduse Laravel kaudu. Seda tehes ei pea nad andma oma YouTube’i kontole juurdepääsu tiimiliikmetele, kes haldavad YouTube’i konto videoid.

Varem olen kirjutanud artikli, milles selgitatakse video üleslaadimist YouTube’i, kasutades PHP-s YouTube’i API-d. Selles artiklis näeme, kuidas Laraveli rakendusest YouTube’i video üles laadida.

Registreerige rakendus ja hankige volikirjad

Alustamiseks peab teil olema Google’i konto. Google’i kontol peate oma rakenduse registreerima ja hankima API-võtmed.

Allpool on juhised rakenduse registreerimiseks ja API võtmete haaramiseks.

  • Minge Google’i arendajakonsoolile https://console.developers.google.com.
  • Looge uus projekt. Samuti saate valida olemasoleva projekti.
  • Sisestage oma projekti nimi. Google Console loob teile ainulaadse projekti ID.
  • Projekti loomisel kuvatakse see vasaku külgriba ülaosas.
  • Klõpsake vasakpoolses menüüs valikut Raamatukogu. Näete Google’i API-de loendit. Lubage YouTube Data API.
  • Järgmiseks klõpsake vasakpoolses menüüs valikut Mandaadid. Valige Loo mandaadid jaotisest Oauth Client id. Valige veebirakenduse jaoks raadionupp.
  • Pange nimi. Sisestage jaotises Volitatud JavaScripti päritolu oma domeeni URL. Volitatud ümbersuunamise URI-desse lisage ümbersuunamise URL-i link aadressina http: // localhost: 8000 / youtube / callback. Edastan siin oma kohaliku URL-i. Peaksite seda URL-i oma domeeniga kohandama.
  • Lõpuks klõpsake nuppu Loo. Hüpikaknast saate kliendi ID ja kliendisaladuse. Kopeerige need üksikasjad. Nõuame seda varsti.

Installige ja seadistage GitHubi teek

Kui olete rakenduse loonud, peate järgmisena installima joedawsoni / youtube’i teegi. Selle teegi installimiseks avage terminal oma projekti juurkataloogis ja käivitage käsk:

composer require dawson/youtube

Pärast teegi installimist peaksite teenusepakkuja ja varjunimed config/app.phpfaili registreerima.

config / app.php

....
'providers' => [
    ...
    DawsonYoutubeYoutubeServiceProvider::class,
],
....
'aliases' => [
    ...
    'Youtube' => DawsonYoutubeFacadesYoutube::class,
],

Järgmisena avaldage youtube.phpja migrations, kasutades järgmist käsku:

php artisan vendor:publish --provider="DawsonYoutubeYoutubeServiceProvider"

Ülaltoodud käsk teisaldab faili youtube.phpkausta ‘config’ ja kausta ‘andmebaas / migreerimised’ migreerimisfaili. Nüüd peate käivitama migratsiooni käsu, mis loob youtube_access_tokensandmebaasi tabelitabeli.

php artisan migrate

See tabel salvestaks juurdepääsuloa ja värskendaks luba pärast YouTube’i konto volitamist. Access_token on vajalik YouTube’i API-ga suhtlemisel. Juurdepääsuluba toimib teie YouTube’i konto identifikaatorina. Juurdepääsuloa eluiga on lühike, nii et uue juurdepääsuloa saamiseks kasutab see teek värskendusmärki. Nende märkide tabelisse sisestamise pärast ei pea te muretsema. Raamatukogu teeb seda taustal.

Oleme kopeerinud API mandaadid, mis tuleb panna Laraveli rakendusse. Avage .envfail ja lisage oma kliendi ID ja kliendisaladus järgmiselt:

GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=

Kui teete keskkonnafailis muudatusi, peaksite konfiguratsiooni tühjendama käsuga:

php artisan config:clear

Google’i konto autoriseerimine

Turvalisuse huvides on teie Laraveli rakendusega YouTube’i konto autoriseerimise marsruudid vaikimisi keelatud. Peate selle lubama oma config/youtube.php. Avage config/youtube.phpja lubage see, asendades vale väärtuse tõesega.

...
'enabled' => true, //set it to 'false' after authorization

Nüüd saate oma konto autoriseerida, kasutades brauseris URL-i YOUR_DOMAIN_URL / youtube / auth. Teie konto autentimiseks suunatakse see Google’i sisselogimislehele. Viige protsess lõpule. Eduka autentimise korral suunate tagasi oma Laraveli rakendusse. Kontrollige youtube_access_tokenstabelit ja peaksite nägema veergu „access_token" sisestatud märgid. See on ühekordne protsess. Raamatukogu genereerib taustal juurdepääsu_kõned automaatselt, isegi kui see on aegunud. Kasutajal pole vaja oma kontot uuesti autoriseerida.

Laadige video üles YouTube’i kontole Laraveli rakenduses

Selles etapis olete pääsukoodiga valmis. Nüüd looge vorm videofaili sirvimiseks ja saatke see YouTube’i. Loome kontrolleri, käivitades alloleva käsu.

php artisan make:controller VideoController --resource

Määrake marsruudid VideoControllerjärgmiselt.

marsruudid / web.php

<?php
...
Route::resource('video', 'VideoController');

Looge vaade resources/views/video.blade.phpja lisage sinna allolev kood.

<form action="{{ url('video') }}" method="post" enctype="multipart/form-data">
    <p><input type="text" name="title" placeholder="Enter Video Title" /></p>
    <p><textarea name="description" cols="30" rows="10" placeholder="Video description"></textarea></p>
    <p><input type="file" name="video" /></p>
    <button type="submit" class="btn btn-default">Submit</button>
    {{ csrf_field() }}
</form>

Helistage sellele vaatefailile indexmeie kontrolleri meetodil.

public function index()
{
    return view('video');
}

Nüüd, kui külastate saiti YOUR_DOMAIN_URL / video, näete vormi, mis sisaldab faili sisestamise, pealkirja, kirjelduse ja esitamise nuppu.

YouTube’i API-le helistamiseks lisage kontrolleris YouTube’i klass. Ja storemeetodisse kirjutage video YouTube’i üleslaadimise kood järgmiselt.

<?php
 
namespace AppHttpControllers;
 
use IlluminateHttpRequest;
use Youtube;
 
class VideoController extends Controller
{
    ....
    public function store(Request $request)
    {
        $video = Youtube::upload($request->file('video')->getPathName(), [
            'title'       => $request->input('title'),
            'description' => $request->input('description')
        ]);
 
        return "Video uploaded successfully. Video ID is ". $video->getVideoId();
    }
}

Siin edastame oma vormilt videofaili, pealkirja ja kirjelduse. See kood lihtsalt laadib teie video YouTube’i üles ja prindib YouTube’i video ID.

Loodan, et saate aru video üleslaadimisest YouTube’i Laraveli rakenduses. Kasutaja saab videoid värskendada ja kustutada ka teegi antud koodi abil. Võite selle kohta rohkem lugeda nende dokumentatsioonist.

seotud artiklid

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem