php抖音开方平台上传视频、发布视频

4 篇文章 0 订阅
    /**上传视频
	  * @param $url        请求url(https://open.douyin.com/video/create?open_id={$open_id}&access_token={$access_token})
	  * @param $file       文件路径 (http://www.xxx.com/uploads/video/test.mp4)
	  * @param $video_name 文件名称(test.mp4)
	*/    
	function curl_upload_file($url,$file,$video_name) {
	    $payload = '';
	    $params  = "--ABC1234\r\n"
	        . "Content-Type: application/x-www-form-urlencoded\r\n"
	        // . "Accept:application/json\r\n"
	        . "\r\n"
	        . $payload . "\r\n"
	        . "--ABC1234\r\n"
	        . "Content-Type: video/mp4\r\n"
	        . "Content-Disposition: form-data; name=\"video\"; filename=\"".$video_name."\"\r\n"
	        . "\r\n"
	        . file_get_contents($file) . "\r\n"
	        . "--ABC1234--";
	        
	    $first_newline      = strpos($params, "\r\n");
	    $multipart_boundary = substr($params, 2, $first_newline - 2);
	    $request_headers    = array();
	    $request_headers[]  = 'Content-Length: ' . strlen($params);
	    $request_headers[]  = 'Content-Type: multipart/form-data; boundary=' . $multipart_boundary;
	    
	    $ch = curl_init($url);
	    curl_setopt($ch, CURLOPT_POST, 1);
	    curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
	    curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
	    curl_setopt($ch, CURLOPT_HTTPHEADER, $request_headers);
	    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	    $reply = curl_exec($ch);
	    return json_decode($reply,true);

	}

 

    /**发布视频
	  * @param $url        请求url (https://open.douyin.com/video/create?open_id={$open_id}&access_token={$access_token})
	  * @param $video_id       文件id(上传视频返回的video_id) 
	  * @param $video_title 视频title (非必填)
	*/
	function curl_create_file($url,$video_id,$video_title) {
	    $ch = curl_init($url);
	    // curl_setopt($ch, CURLOPT_TIMEOUT, 60); //设置超时
	    // if(0 === strpos(strtolower($url), 'https')) {
	    //   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); //对认证证书来源的检查
	    //   curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); //从证书中检查SSL加密算法是否存在
	    // }
	    curl_setopt($ch, CURLOPT_POST, TRUE);
	    $data = [
	    			'video_id'=>$video_id,
	    			'text'=>$video_title
	    		];
	    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)); 
	    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
	    curl_setopt($ch, CURLOPT_HTTPHEADER, array(                   
	        'Content-Type: application/json',
	        'Content-Length: ' . strlen(json_encode($data)))
	    );
	    $reply = curl_exec($ch);//CURLOPT_RETURNTRANSFER 不设置  curl_exec返回TRUE 设置  curl_exec返回json(此处) 失败都返回FALSE
	    curl_close($ch);
	    return json_decode($reply,true);
	}
	    

 

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

木子李0531

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值