codecamp

优酷开放平台接口调用

3.4.1 扩展类库:优酷开放平台接口调用

此扩展可用于对优酷开放平台提供的接口进行快速调用,并将失败的情况以debug方式写入日志。

3.4.2 安装和配置

 PhalApi-Library 扩展库中下载获取 YoukuClient 优酷接口客户端,如使用:

git clone https://git.oschina.net/dogstar/PhalApi-Library.git

然后把 YoukuClient 目录复制到 ./PhalApi/Library/ 下,即:

cp ./PhalApi-Library/YoukuClient/ ./PhalApi/Library/ -R

到此安装完毕!

3.4.3 使用

可以先在初始化文件init.php中引入扩展类库,并注册一个youkuClient的服务:

//$ vim ./Public/init.php
$loader->addDirs('Library');

DI()->youkuClient = function() {
    return new YoukuClient_Lite('https://openapi.youku.com', 'b043a60fbef8aed0');
};

然后,就可以在项目中使用youkuClient这个服务来实现对优酷平台接口的调用。

通常,我们会在Model层包装这一层数据来源的获取。但这里只是了为演示的效果,全部将代码放到Api里面,如:

//$ vim ./Demo/Api/Youku.php 

<?php

class Api_Youku extends PhalApi_Api {

    public function showBasic()
    {
        $uri = '/v2/videos/show_basic.json';
        $params = array(
            'video_url' => 'http://v.youku.com/v_show/id_XOTA4ODU4NjA0.html'
        );
        $timeoutMs = 3000;

        $info = DI()->youkuClient->get($uri, $params, $timeoutMs);

        return array('id' => $info['id'], 'title' => $info['title']);
    }
}

请求一下对应的接口,便可以获得以下的运行效果:

0310

对应的优酷视频是: 【双语字幕】Apple Watch 动手玩 - The Verge

基于PHPMailer的邮件发送
七牛云存储接口调用
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

八、视频教程

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }