【问题标题】:PHP youtube api errorPHP youtube api错误
【发布时间】:2012-04-05 15:59:58
【问题描述】:

如何使用 youtube api 从 localhost Web 应用程序在 codeigniter 或 php 中上传视频?

我按照 youtube 库中的步骤如下:

 api key : 'my developer key'

 consumer key : 'anonymous' 

 consumer secret : 'anonymous'

我正在使用以下功能,我的网站网址是:http://localhost/ci-youtube/example/request_youtube

//CALL THIS METHOD FIRST BY GOING TO
    //www.your_url.com/index.php/request_youtube
    public function request_youtube()
    {   
        $params['key'] = 'anonymous';
        $params['secret'] = 'anonymous';
        $params['algorithm'] = 'HMAC-SHA1';

        $this->load->library('google_oauth', $params);

        $data = $this->google_oauth->get_request_token(site_url('example/access_youtube'));
        print_r($data);
        $this->session->set_userdata('token_secret', $data['token_secret']);
        redirect($data['redirect']); 
        //$this->load->view('welcome_message');

    }

    //This method will be redirected to automatically
    //once the user approves access of your application
    public function access_youtube()
    {
        $params['key'] = 'anonymous';
        $params['secret'] = 'anonymous';
        $params['algorithm'] = 'HMAC-SHA1';

        $this->load->library('google_oauth', $params);

        $oauth = $this->google_oauth->get_access_token(false, $this->session->userdata('token_secret'));

        $this->session->set_userdata('oauth_token', $oauth['oauth_token']);
        $this->session->set_userdata('oauth_token_secret', $oauth['oauth_token_secret']);
    }

但它显示错误:'Invalid Token'

有什么想法吗?

提前感谢您的快速回复。

【问题讨论】:

  • 您的查询可能使用了错误的基本网址。
  • google_oauth 有错误处理吗?即:这->google_oauth->last_error ?如果是这样,请记录它并查看它给出的反馈。
  • @Philip:我得到了回复:$response = $this->_connect("{$baseurl}?scope={$auth['scope']}", $str); as 'Timestamp is too far from current time: 1332315674'
  • 它并没有真正泄露多少

标签: php codeigniter youtube-api


【解决方案1】:

时间戳与当前时间相差太远:

您的服务器时间似乎设置不正确。请更正您的服务器时间,您可能希望在修正时间后重新启动您的网络服务器。 - 更改服务器时间。尝试先重新启动 Web 服务器。如果不起作用,请重新启动您的计算机 ==> 它可以工作!。

【讨论】:

    【解决方案2】:

    首先确保您使用的是正确的消费者密钥和消费者密码。

    其次,如果您遇到 Google_oauth 库或 Youtube 库的问题,请确保将这些库中的 DEBUG 常量设置为 true。这样做会将更多的日志信息转储到 PHP 错误日志中,这将有助于您诊断问题。

    【讨论】:

      【解决方案3】:

      我认为您还没有从 YouTube 获得 API 密钥。是这样吗?

      【讨论】:

      • 我正在使用我的“开发者密钥”作为“youtube api”密钥。可以吗?
      • 是的,我就是这个意思。而且,您能否尝试访问此 URL:gdata.youtube.com/feeds/api/… 将 DEVELOPER_KEY 替换为您的开发人员密钥。确保您获得开发者密钥的结果
      • 它工作正常,但为什么 oauth_token 丢失并在我的编码中显示错误“无效令牌”。
      【解决方案4】:

      我还没有发布这个,但我即将发布一个基于 PHP 的 Youtube 自动上传器,它允许您从 NAS 盒、备用 PC 等运行上传。

      https://github.com/Danack/Youtube-Autouploader

      里面有一个完整的例子,说明如何将视频上传到 Youtube,特别是函数“uploadVideo($filename, $videoInfo)”

      https://github.com/Danack/Youtube-Autouploader/blob/master/youtubeCurl.php

      【讨论】:

      • 抱歉这个方法不安全。
      • 太棒了 - 你说它只是从本地主机运行。如果您需要它来确保托管在网络服务器上的安全性,您应该这样说。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-15
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 2018-05-12
      相关资源
      最近更新 更多