多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
##3.4.1 扩展类库:优酷开放平台接口调用 此扩展可用于对优酷开放平台提供的接口进行快速调用,并将失败的情况以debug方式写入日志。 ##3.4.2 安装和配置 从 [PhalApi-Library](http://git.oschina.net/dogstar/PhalApi-Library) 扩展库中下载获取 **YoukuClient** 优酷接口客户端,如使用: ```javascript git clone https://git.oschina.net/dogstar/PhalApi-Library.git ``` 然后把 **YoukuClient** 目录复制到 **./PhalApi/Library/** 下,即: ```javascript cp ./PhalApi-Library/YoukuClient/ ./PhalApi/Library/ -R ``` 到此安装完毕! ##3.4.3 使用 可以先在初始化文件init.php中引入扩展类库,并注册一个youkuClient的服务: ```javascript //$ vim ./Public/init.php $loader->addDirs('Library'); DI()->youkuClient = function() { return new YoukuClient_Lite('https://openapi.youku.com', 'b043a60fbef8aed0'); }; ``` 然后,就可以在项目中使用youkuClient这个服务来实现对优酷平台接口的调用。 通常,我们会在Model层包装这一层数据来源的获取。但这里只是了为演示的效果,全部将代码放到Api里面,如: ```javascript //$ 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](http://webtools.qiniudn.com/20150411005257_d7386899f4fbd38cb5493950026a5b02) 对应的优酷视频是: [【双语字幕】Apple Watch 动手玩 - The Verge](http://v.youku.com/v_show/id_XOTA4ODU4NjA0.html?f=23542444&ev=4&from=y1.1-2.10001-0.1-1)