✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

Kuinka ladata video YouTubeen Laravel-sovelluksessa

22

Äskettäin yksi lukijoistamme kysyi kuinka ladata video YouTubeen Laravel-sovelluksesta. He halusivat rakentaa järjestelmän, joka voi ladata YouTube-videoita Laravel-sovelluksesta. Tällöin heidän ei tarvitse antaa YouTube-tililleen pääsyä tiimin jäsenille, jotka hallinnoivat videoita YouTube-tilille.

Aiemmin olen kirjoittanut artikkelin, joka selittää videoiden lataamisen YouTubeen käyttämällä PHP: n YouTube-sovellusliittymää. Tässä artikkelissa näemme, kuinka video ladataan YouTubeen Laravel-sovelluksesta.

Rekisteröi sovellus ja hanki kirjautumistiedot

Aloittamiseksi sinulla on oltava Google-tili. Google-tilillä sinun on rekisteröitävä hakemuksesi ja hankittava API-avaimet.

Alla on vaiheet sovelluksen rekisteröimiseksi ja API-avainten nappaamiseksi.

  • Siirry Google Developer Consoleen https://console.developers.google.com.
  • Luo uusi projekti. Voit myös valita olemassa olevan projektin.
  • Kirjoita projektisi nimi. Google Console luo sinulle yksilöllisen projektitunnuksen.
  • Kun luot projektin, se näkyy vasemman sivupalkin yläosassa.
  • Napsauta vasemmasta valikosta Kirjasto. Näet luettelon Google-sovellusliittymistä. Ota käyttöön YouTube Data -sovellusliittymä.
  • Napsauta sitten vasemmasta valikosta Tunnistetiedot. Valitse Luo kirjautumistiedot -kohdasta Oauth-asiakastunnus. Valitse valintanappi Web-sovellukselle.
  • Anna nimi. Syötä verkkotunnuksesi URL-osoite kohtaan Valtuutetut JavaScript-alkuperät. Lisää valtuutettujen uudelleenohjausten URI-tunnuksiin uudelleenohjauksen URL-osoitteen linkki nimellä http: // localhost: 8000 / youtube / callback. Välitän paikallisen URL-osoitteen tähän. Säädä tämä URL-osoite verkkotunnuksellasi.
  • Napsauta lopuksi Luo-painiketta. Saat ponnahdusikkunasta asiakastunnuksen ja asiakassalaisuuden. Kopioi nämä tiedot. Vaadimme sitä pian.

Asenna ja määritä GitHub-kirjasto

Kun olet luonut sovelluksen, seuraava asia on asentaa joedawson / youtube- kirjasto. Kun haluat asentaa tämän kirjaston, avaa pääte projektin juurihakemistossa ja suorita komento:

composer require dawson/youtube

Kun olet asentanut kirjaston, rekisteröi palveluntarjoaja ja aliakset config/app.phptiedostoon.

config / app.php

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

Seuraavaksi julkaise youtube.phpja siirrot alla olevan komennon avulla:

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

Yllä oleva komento siirtää tiedoston youtube.phpconfig-kansioon ja siirtotiedosto kansioon ‘database / migrations’. Nyt sinun on suoritettava siirtokomento, joka luo taulukkotaulukon youtube_access_tokenstietokantaan.

php artisan migrate

Tämä taulukko tallentaa käyttöoikeustunnuksen ja päivittää tunnuksen YouTube-tilin valtuuttamisen jälkeen. Access_token vaaditaan, kun olet vuorovaikutuksessa YouTube-sovellusliittymän kanssa. Käyttöoikeustunnus toimii tunnuksena YouTube-tilillesi. Käyttöoikeustunnuksella on lyhyt käyttöikä, joten uusi kirjaus käyttää päivitystunnusta uuden käyttöoikeuden saamiseksi. Sinun ei tarvitse huolehtia näiden tunnusten lisäämisestä taulukkoon. Kirjasto tekee sen taustalla.

Olemme kopioineet API-tunnistetiedot, jotka on lisättävä Laravel-sovellukseen. Avaa .envtiedosto ja lisää asiakastunnuksesi ja asiakassalaisuutesi seuraavasti:

GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=

Jos teet muutoksia ympäristötiedostoon, sinun on tyhjennettävä kokoonpano komennolla:

php artisan config:clear

Google-tilin valtuutus

Turvallisuussyistä reitit YouTube-tilin valtuuttamiseksi Laravel-sovelluksellasi on oletusarvoisesti poissa käytöstä. Sinun on otettava se käyttöön omasta config/youtube.php. Avaa config/youtube.phpja ota se käyttöön korvaamalla väärä arvo tosi-arvolla.

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

Voit nyt valtuuttaa tilisi käyttämällä selaimen URL-osoitetta YOUR_DOMAIN_URL / youtube / auth. Se ohjaa Google-kirjautumissivulle todentamaan tilisi. Viimeistele prosessi. Onnistuneen todennuksen jälkeen sinut ohjataan takaisin Laravel-sovellukseesi. Tarkista youtube_access_tokenstaulukko ja sinun pitäisi nähdä tunnukset, jotka on lisätty access_token -sarakkeeseen. Tämä on kertaluonteinen prosessi. Kirjasto luo access_token automaattisesti taustalle, vaikka se olisi vanhentunut. Käyttäjän ei tarvitse valtuuttaa tiliä uudelleen.

Lataa video YouTube-tilille Laravel-sovelluksessa

Tässä vaiheessa olet valmis käyttötunnuksella. Luo nyt lomake videotiedoston selaamiseksi ja lähetä se YouTubeen. Luodaan ohjain suorittamalla alla oleva komento.

php artisan make:controller VideoController --resource

Määritä reitit VideoControllerseuraavasti.

reitit / web.php

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

Luo näkymä resources/views/video.blade.phpja lisää siihen alla oleva koodi.

<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>

Kutsu tätä indexnäkymätiedostoa ohjaimen menetelmällä.

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

Nyt kun vierailet sivustollasi URL-osoitteessa YOUR_DOMAIN_URL / video, näet lomakkeen, joka sisältää tiedoston syötteen, otsikon, kuvauksen ja lähetä-painikkeen.

Lisää YouTube-luokka ohjaimeen, jotta voit soittaa YouTube-sovellusliittymään. Ja storekirjoita menetelmään koodi ladata video YouTubeen seuraavasti.

<?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();
    }
}

Tässä välitämme videotiedoston, otsikon ja kuvauksen lomakkeestamme. Tämä koodi yksinkertaisesti lataa videosi YouTubeen ja tulostaa YouTube-videotunnuksen.

Toivon, että ymmärrät videon lataamisen YouTubeen Laravel-sovelluksessa. Käyttäjä voi myös päivittää ja poistaa videoita kirjaston antamalla koodilla. Voit lukea siitä lisää heidän dokumentaatiostaan.

Aiheeseen liittyvät artikkelit

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja