1

我想使用 Flickr 作为我网站照片的存储库。我们的想法是使用“私人”权限将它们上传到 Flickr,这样没有人可以在那里看到它们,而是将它们显示在我网站上的公共画廊中。

我收集到我需要身份验证(大概是誓言)。但我不希望我的网站访问者必须登录或通过某种身份验证过程。我希望它在后台保持沉默/。

这完全可行吗?

我正在使用带有 Oauth 插件的(标准)php flickr 类,来自:http ://asociaux.fr/post/2012/01/06/Authentification-API-Flickr-Oauth-PHPFlickr

当然,我已经创建了我的 api 密钥/秘密。

虽然我熟悉 php flickr 的标准用法(没有身份验证),但我完全不知道从哪里开始使用这个 auth thingy。

我从第一种方法开始(如上述网站所述):

$f = new phpFlickr($cle_api, $cle_secret_api);  
$f->getRequestToken($callback); 

但问题是,flickr 授予“我”(浏览器用户)访问权限,而不是服务器。这显然不是我想要的?

有人可以指出我正确的方向吗?

注意:现在我对这个过程的阅读部分感兴趣(写作部分稍后会出现)。

4

1 回答 1

1

使用 phpFlickr 类是可能的。我做了什么让它与我的私人照片一起工作:

  1. 在公共域 (example.com) 上设置 phpFlickr
  2. 生成 Flickr API 密钥并将身份验证回调指向 auth.php (example.com/phpflickr/auth.php)
  3. 现在,在 getToken.php 上设置参数并在浏览器上运行它。我没有完成这项工作(它没有显示我的令牌),但它会将您重定向到带有frob参数的页面。
  4. 转到http://www.flickr.com/services/api/explore/?method=flickr.auth.getToken
  5. 将刚刚复制的 frob 值(“MORENUMBERS”)粘贴到值框中。
  6. 检查具有完全权限的签名呼叫。
  7. 在下面,您的令牌应该会弹出。
  8. 复制令牌编号并将其用作脚本中的硬编码参数:

    $conf = array(
      'token' => '[token]',
      'key' => '[key]',
      'secret' => '[secret]'
    );
    require_once("vendor/phpflickr/phpFlickr.php");
    $f = new phpFlickr($conf['key'], $conf['secret']);
    $f->setToken($conf['token']);
    
    //change this to the permissions you will need
    $f->auth("read");
    
    // you can now call all API methods
    

希望这会有所帮助。

于 2014-09-04T07:41:33.710 回答