首页 >后端开发 >php教程 >通过Vimeo的API喜欢,监视和上传

通过Vimeo的API喜欢,监视和上传

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌原创
2025-02-16 08:31:08723浏览

本文在先前的教程上扩展了使用Silex,Twig和Vimeo API的基本视频应用程序。 这次,我们将添加视频喜欢,监视列表功能和视频上传。

>

Liking, Watchlisting and Uploading through Vimeo's API

键增强:

  • 增强Vimeo API交互: Vimeo API现在支持喜欢视频并将它们添加到监视列表中。 这需要在Vimeo应用程序的权限中添加“互动”范围。 还启用了视频上传,但需要事先获得Vimeo的批准,并在您的访问令牌中添加“上传”范围。>
  • >异步操作(AJAX):用户交互(喜欢,守望清单)触发Ajax请求到服务器。 “ 204”响应表示无数据有效载荷的成功操作,向用户提供视觉反馈(按钮禁用)。 >视频上传工作流程:
  • 该过程涉及创建Vimeo应用程序,获取访问令牌,使用帖子创建上传票,放置视频文件,最后删除以最终确定上传。 >先决条件:

    >熟悉上一个教程(原始教程中提供的链接或下载)。 确保您的开发环境(改进的宅基地改进)设置并运行。 >

    >与视频互动(喜欢和守望列表):

    >

    >>更新Vimeo API范围:>修改您的Vimeo登录以包含

    >范围:
      >
    1. interact>
    2. 添加交互按钮:
    in
    <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. templates/videos.php
    2. >客户端AJAX处理(videos.js):
    此JavaScript句柄按钮点击并发送AJAX请求:>
    <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. 服务器端路由处理(index.php):添加这些路由以处理AJAX请求。 他们提取视频ID,进行API调用(put方法),然后返回使用状态代码的JSON响应。
    <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. 上传视频:
    >
    <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>
    >请求上传访问:

    通过开发人员仪表板为您的Vimeo应用程序请求上传权限。 这可能需要几个工作日。

    1. >
    2. 添加上传范围(如果批准):
    >一旦批准,将

    范围添加到您的访问令牌中。Liking, Watchlisting and Uploading through Vimeo's API

      1. >> upload视图(upload.php):>在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>

以上是通过Vimeo的API喜欢,监视和上传的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn