上一章 文档首页 下一章


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


上一章 文档首页 下一章

还有疑问?欢迎到社区提问!    切换到PhalApi 2.x 开发文档。

Fork me on GitHub