letv.php,乐视云 API - 如花花的个人空间 - OSCHINA - 中文开源技术交流社区
视频上传到乐视云 在自己的网站播放
我个人理解 乐视云在这里充当了一个资源服务器 通过api取到视频链接和信息 存到自己库里 与项目进行关联 下面代码是从一位已注销的开源中国的朋友那找到的
class LeshiController
{
public $userid = '';//用户id
public $secret = '';//私钥
public $user_unique = '';//用户唯一标识码,由乐视网统一分配并提供 UUID
public $zhibo_apiurl = 'http://api.open.letvcloud.com/live/execute';//直播接口地址
public $dianbo_apiurl = 'http://api.letvcloud.com/open.php';//点播接口地址
public $zhibo_ver = '3.0';//直播协议版本
public $dianbo_ver = '2.0';//点播协议版本
// public function __construct()
// {
// }
/*
* 直播api
* $api_name string 直播接口名
* $param array 直播参数
*/
public function zhibo($api_name,$param=''){
$param['method'] = $api_name;
$res = $this->_sendZhiboApi($param);//请求接口
return $res;
}
/*
* 点播api
* $api_name string 点播接口名
* $param array 点播参数
*/
public function dianbo($api_name,$param=''){
$param['api'] = $api_name;
$res = $this->_sendDianboApi($param);//请求接口
return $res;
}
/*
* 发送直播api请求
*/
protected function _sendZhiboApi($param){
$param['ver'] = $this->zhibo_ver;//直播版本号
$param['userid'] = $this->userid;//用户数字id
$param['timestamp'] = time()*1000;//时间戳 毫秒
$sign = $this->_getSign($param);//获取签名
$param['sign'] = $sign;
$json = $this->_curlPost($this->zhibo_apiurl,$param);
$res = json_decode($json,true);
return $res;
}
/*
* 发送点播api请求
*/
protected function _sendDianboApi($param){
$param['ver'] = $this->dianbo_ver;//协议版本号,统一取值为2.0
$param['user_unique'] = $this->user_unique;//用户唯一标识码,由乐视网统一分配并提供
$param['timestamp'] = time()*1000;//当前Unix时间戳
$param['format'] = 'json';//返回参数格式:支持json和xml两种方式
$sign = $this->_getSign($param);//获取签名
$param['sign'] = $sign;
$json = $this->_curlPost($this->dianbo_apiurl,$param);
$res = json_decode($json,true);
if($res['code'] == 0){
return isset($res['data']) ? $res['data'] : true;
}
return false;
}
/*
* 作用:生成签名
*/
protected function _getSign($param)
{
//签名步骤一:按字典序排序参数
ksort($param);
$String = $this->_formatBizQueryParaMap($param);//拼接数组
//签名步骤二:在string后加入KEY
$String = $String.$this->secret;
//签名步骤三:MD5加密
$String = md5($String);
return $String;
}
/*
* 拼接数组
*/
protected function _formatBizQueryParaMap($paraMap, $urlencode = ''){
$buff = "";
ksort($paraMap);
foreach ($paraMap as $k => $v){
if($urlencode){
$v = urlencode($v);
}
$buff .= $k . $v;
}
return $buff;
}
/*
* 发送curl 请求
*/
public function _curlPost($url,$data){
$ch = curl_init();
$header[] = "Accept-Charset: utf-8";
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$tmpInfo = curl_exec($ch);
curl_close($ch);
return $tmpInfo;
}
}
秘钥 用户ID UUID 都是乐视云后台可以看到的 通过一个算法和自己的secret 组合成一个md5加密的sign
require_once 'getsign.php';
$LeshiController = new LeshiController();
$result = $LeshiController->dianbo('video.list');
var_dump($result);
/** 结果
array
0 =>
array
'video_id' => string '36950395' (length=8)
'video_unique' => string '810090111f' (length=10)
'video_name' => string '阴阳师' (length=9)
'img' => string 'http://i3.letvimg.com/lc13_yunzhuanma/201610/28/09/38/547428c7a1e48587f36c5d0969d35565_v2_NDIyMjkxNjMw/thumb/1.jpg' (length=114)
'init_pic' => string '' (length=0)
'is_pay' => string '0' (length=1)
'video_duration' => string '218' (length=3)
'initial_size' => string '57180660' (length=8)
'error_code' => string '0' (length=1)
'error_desc' => string '' (length=0)
'complete_time' => string '2016-10-28 09:36:46' (length=19)
'add_time' => string '2016-10-28 09:35:38' (length=19)
'isdrm' => string '0' (length=1)
'isdownload' => string '0' (length=1)
'video_desc' => string '' (length=0)
'tag' => string '' (length=0)
'file_md5' => string '547428c7a1e48587f36c5d0969d35565' (length=32)
'mid' => string '211145315' (length=9)
'usercategory1' => string '37869' (length=5)
'usercategory2' => string '37870' (length=5)
'status' => string '10' (length=2)
*/
很简单 获取的是视频列表 没有参数 需要获取其他信息的 根据方法传对应的值
letv.php,乐视云 API - 如花花的个人空间 - OSCHINA - 中文开源技术交流社区相关推荐
- python 点云重建,点云 表面重建 - osc_0tk7cpde的个人空间 - OSCHINA - 中文开源技术交流社区...
啊哈 最近在参加一个数学建模的比赛 要求是对一个果子里面的虫洞进行三维模型重建 但是百度之后并没有找到对点云数据直接重建的方法(很少) 整个代码是python写的 里面的各种库似乎有一个是可以做这个的 ...
- opencv matlab三维点云,点云采样的三种方法 - 小白学视觉的个人空间 - OSCHINA - 中文开源技术交流社区...
点击上方"小白学视觉",选择"星标"公众号 重磅干货,第一时间送达 编辑:3D视觉工坊 本文由知乎作者GeometryHub授权转载,不得擅自二次转载. 原文链 ...
- qiniu rs.php,七牛API操作类 - suconghou的个人空间 - OSCHINA - 中文开源技术交流社区...
require_once("qiniu/io.php"); require_once("qiniu/rs.php"); require_once("q ...
- 百度音乐api+c语言,百度音乐接口api - osc_d87glhzv的个人空间 - OSCHINA - 中文开源技术交流社区...
百度音乐全接口 http://tingapi.ting.baidu.com/v1/restserver/ting 请求方式:GET 参数处理:format=json&calback=& ...
- 关于码云的一些基本知识_网络攻防前期知识储备 - osc_ojkfylwq的个人空间 - OSCHINA - 中文开源技术交流社区...
一.如何提问 1.我的观点:提问分为课堂提问和课下提问两种.课堂中应该是当面交流的,更加鼓励当有疑问的时候在稍作整理思路后直接大胆的提问.课下疑问的解决,不可能时时的交流,更加需要独立的思考,而提问需 ...
- 京东云宙斯上传单张图片php,单张图片上传源码 - 茄子何的个人空间 - OSCHINA - 中文开源技术交流社区...
//控制允许上传的图片类型和大小 if ((($_FILES["fctupian"]["type"] == "image/gif") || ...
- android 基站定位 api,基站定位查询接口 - whoisliang的个人空间 - OSCHINA - 中文开源技术交流社区...
本站查询接口免费开放 所有免费接口禁止从移动设备端直接访问,请使用固定IP的服务器转发请求. 每5分钟限制查询300次,基站/WIFI/经纬度查询接口每日限制查询1000次,反向基站查询接口每日限制查 ...
- api文档 luci_研究LuCI - 技术手札 - OSCHINA - 中文开源技术交流社区
OpenWrt里有微型的 http 服务器,叫 uhttpd. 可执行文件在 /usr/sbin/uhttpd,对应的配置文件是 /etc/config/uhttpd.打开这个文件: 里面指定的网页的 ...
- mysql主从复制轮训,MySQL主从配置 - 李小热_大风起兮云飞扬 - OSCHINA - 中文开源技术交流社区...
Mysql集群配置 1 主机配置 修改mysql配置文件,windows下为my.ini,linux下为my.cnf 在mysqld节点下增加: server-id=1 log-bin=log bin ...
最新文章
- DARPA发布产业振兴计划,继承摩尔智慧
- 零基础学python全彩版实战答案-零基础学Python(全彩版)
- 中国火电设备市场发展方向与投资策略研究报告2022版
- Mysql: SQL JOIN 子句详解
- 测试教程网.unittest教程.7. 各种断言方法
- boost::erase相关的测试程序
- webshell提权教程linux,Linux下WEBSHELL提权
- 安装oracle12.1 32位客户端时,出现[INS-10102]未能初始化安装程序错误
- 网络博客营销之博客设置和优化
- Objective-C Runtime那点事儿
- matlab多图形相交,用MATLAB作出柱面x^2+y^2=4 和柱面x^2+z^2=4 相交的图形.
- Linux USB驱动-鼠标驱动
- Excel十字象限图
- 华为手机一直android,华为手机内存不够用?这5个文件夹常清理,可以腾出近10个G内存...
- 统计元音(函数专题)
- 数据结构与算法_01_复杂度分析
- 现在开房都不需要在前台办理入住了?刺激
- vue 服务器代码更新 浏览器页面不更新
- 955/965公司名单
- mac mini u盘安装系统_用PE系统U盘启动盘安装操作系统