Rumah >pembangunan bahagian belakang >tutorial php >Suka, senarai pengawasan dan memuat naik melalui API Vimeo '

Suka, senarai pengawasan dan memuat naik melalui API Vimeo '

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌asal
2025-02-16 08:31:08725semak imbas

Artikel ini mengembang pada tutorial sebelumnya yang menunjukkan aplikasi video asas menggunakan Silex, Twig, dan API Vimeo. Kali ini, kami akan menambah keinginan video, fungsi WAJIR, dan muat naik video.

Liking, Watchlisting and Uploading through Vimeo's API

Peningkatan Utama:

  • Interaksi API Vimeo yang dipertingkatkan: API Vimeo kini menyokong menyukai video dan menambahkannya ke senarai pengawasan. Ini memerlukan menambah skop "berinteraksi" ke kebenaran aplikasi Vimeo anda. Muat naik video juga didayakan, tetapi memerlukan kelulusan terlebih dahulu dari Vimeo dan menambah skop "muat naik" ke token akses anda. Operasi Asynchronous Operasi (AJAX):
  • Interaksi Pengguna (suka, menyenaraih jam) mencetuskan permintaan AJAX ke pelayan. Tanggapan '204' menandakan operasi yang berjaya tanpa muatan data, memberikan maklum balas visual (butang melumpuhkan) kepada pengguna.
  • Video memuat naik alur kerja: Proses ini melibatkan membuat aplikasi Vimeo, mendapatkan token akses, menggunakan pos untuk membuat tiket muat naik, dimuat naik untuk memuat naik fail video, dan akhirnya memadam untuk memuktamadkan muat naik.
  • Prasyarat:

Biasakan diri anda dengan tutorial sebelumnya (pautan atau muat turun yang disediakan dalam asal). Pastikan persekitaran pembangunan anda (Homestead bertambah baik disyorkan) ditubuhkan dan dijalankan.

Berinteraksi dengan video (suka & menyenaraih jam):

Kemas kini skop Vimeo API:

Ubah suai log masuk Vimeo anda untuk memasukkan skop
    :
  1. interact
Tambah butang interaksi:
<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>
dalam
    , tambah butang seperti dan jam tangan di bawah penerangan video:
  1. templates/videos.php
Pengendalian Ajax sisi pelanggan (videos.js):
<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>
JavaScript ini mengendalikan klik butang dan menghantar permintaan AJAX:
Pengendalian laluan sisi pelayan (index.php):
<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>
Tambah laluan ini untuk mengendalikan permintaan Ajax. Mereka mengeluarkan ID video, membuat panggilan API (meletakkan kaedah), dan mengembalikan respons JSON dengan kod status.
  1. memuat naik video:
<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>

Permintaan muat naik akses:

Permintaan keizinan muat naik untuk aplikasi Vimeo anda melalui papan pemaju pemaju. Ini mungkin mengambil masa beberapa hari.

Tambah skop muat naik (jika diluluskan): Liking, Watchlisting and Uploading through Vimeo's API Setelah diluluskan, tambahkan skop

ke token akses anda.
    1. paparan muat naik (upload.php): Buat borang muat naik mudah dalam 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. laluan muat naik (index.php): Mengendalikan muat naik fail dan interaksi API Vimeo:
    <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>

Atas ialah kandungan terperinci Suka, senarai pengawasan dan memuat naik melalui API Vimeo '. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn