Heim >Backend-Entwicklung >PHP-Tutorial >Lust, Beobachtungsliste und Hochladen durch die API -API von Vimeo

Lust, Beobachtungsliste und Hochladen durch die API -API von Vimeo

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌Original
2025-02-16 08:31:08723Durchsuche

Dieser Artikel erweitert ein früheres Tutorial, das eine grundlegende Videoanwendung mit Silex, Twig und der Vimeo -API demonstriert. Dieses Mal fügen wir Video -Vorlieben, Watchlist -Funktionen und Video -Uploads hinzu.

Liking, Watchlisting and Uploading through Vimeo's API

Schlüsselverbesserungen:

  • Verbesserte Vimeo -API -Interaktion: Die Vimeo -API unterstützt jetzt Videos, die Videos mögen und zu einer Watchlist hinzufügen. Dies erfordert das Hinzufügen des "Interact" -Prosionsbereichs zu den Berechtigungen Ihrer Vimeo -Anwendung. Das Video -Hochladen ist ebenfalls aktiviert, erfordert jedoch eine vorherige Genehmigung von Vimeo und das Hinzufügen des "Upload" -Amgumes zu Ihren Zugriffstoken.
  • asynchrone Operationen (AJAX): Benutzerinteraktionen (LIEBEN, WATCHLISTING) AJAX -Anforderungen an den Server. Eine '204' Antwort bedeutet einen erfolgreichen Betrieb ohne Datennutzlast, das dem Benutzer visuelle Feedback (Schaltfläche Deaktivieren) bereitstellt.
  • Video -Hochladen Workflow: Der Prozess beinhaltet das Erstellen einer Vimeo -App, das Erhalten eines Zugriffstokens, mithilfe des Posts zum Erstellen eines Upload -Tickets, zum Hochladen der Videodatei und schließlich löschen, um das Upload abzuschließen.

Voraussetzungen:

Machen Sie sich mit dem vorherigen Tutorial vertraut (Link oder Download in Original). Stellen Sie sicher, dass Ihre Entwicklungsumgebung (Homestead verbessert empfohlen) eingerichtet ist.

interagieren mit Videos (mögen & Beobachtung):

  1. Aktualisieren Sie die Vimeo -API -Scopes: Ändern Sie Ihr Vimeo -Login, um den interact -Abgleis einzuschließen:
<code class="language-php">$scopes = array('public', 'private', 'interact');
$state = substr(str_shuffle(md5(time())), 0, 10);
$_SESSION['state'] = $state;
$url = $vimeo->buildAuthorizationEndpoint(REDIRECT_URI, $scopes, $state);
$page_data = array('url' => $url);</code>
  1. Interaktionsschaltflächen hinzufügen: in templates/videos.php, fügen Sie die Schaltflächen für die Videobeschreibung hinzu und wenden Sie die Schaltflächen:
<code class="language-html"><div>
    <button class="like" data-uri="{{ video.uri }}">Like</button>
    <button class="watch-later" data-uri="{{ video.uri }}">Watch Later</button>
</div></code>
  1. clientseitiges AJAX-Handling (Videos.js): Diese JavaScript-Schaltfläche klickt und sendet AJAX-Anforderungen:
<code class="language-javascript">$('.like').click(function(){
    let self = $(this);
    let uri = self.data('uri');
    $.post('/tester/vimeo-slim/video/like', {'uri': uri}, function(response){
        if(response.status == '204') self.prop('disabled', true);
    });
});

$('.watch-later').click(function(){
    let self = $(this);
    let uri = self.data('uri');
    $.post('/tester/vimeo-slim/video/watchlater', {'uri': uri}, function(response){
        if(response.status == '204') self.prop('disabled', true);
    });
});</code>
  1. serverseitige Routenbehandlung (index.php): Fügen Sie diese Routen hinzu, um AJAX-Anforderungen zu verarbeiten. Sie extrahieren die Video -ID, erstellen den API -Anruf (Put -Methode) und geben eine JSON -Antwort mit dem Statuscode zurück.
<code class="language-php">$app->post('/video/like', function () use ($app, $vimeo) {
    if($app->request->post('uri')){
        $video_id = str_replace('/videos/', '', $app->request->post('uri'));
        $vimeo->setToken($_SESSION['user.access_token']);
        $response = $vimeo->request('/me/likes/' . $video_id, [], 'PUT');
        $app->contentType('application/json');
        echo json_encode(['status' => $response['status']]);
    }
});

$app->post('/video/watchlater', function () use ($app, $vimeo) {
    //Similar to /video/like, but uses '/me/watchlater/' endpoint
});</code>

Videos hochladen:

  1. Anfordern Sie Upload Access: Anfordern Sie Überladungsberechtigungen für Ihre Vimeo -App über das Entwickler -Dashboard. Dies kann mehrere Werktage dauern.

Liking, Watchlisting and Uploading through Vimeo's API

  1. Upload -Bereich hinzufügen (falls genehmigt): Wenn Sie nach Genehmigung das upload -Zuelfolie zu Ihren Zugriffsstoken hinzufügen.
  2. .

Liking, Watchlisting and Uploading through Vimeo's API

  1. hochladen Ansicht (Upload.php): Erstellen Sie ein einfaches Upload -Formular in templates/upload.php:
<code class="language-php">$scopes = array('public', 'private', 'interact');
$state = substr(str_shuffle(md5(time())), 0, 10);
$_SESSION['state'] = $state;
$url = $vimeo->buildAuthorizationEndpoint(REDIRECT_URI, $scopes, $state);
$page_data = array('url' => $url);</code>
  1. Route hochladen (index.php): Datei -Uploads und Vimeo -API -Interaktion verwandeln:
<code class="language-html"><div>
    <button class="like" data-uri="{{ video.uri }}">Like</button>
    <button class="watch-later" data-uri="{{ video.uri }}">Watch Later</button>
</div></code>

Das obige ist der detaillierte Inhalt vonLust, Beobachtungsliste und Hochladen durch die API -API von Vimeo. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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