使用php向flickr自动上传图片 |
发布: 2013-07-16 09:58 |
1、选择api phpFlickr,这个包支持php4/php5。与phlickr这个要新些全面些。 这个库想比phlickr更合适,但是也有些老,像没有像oauth这些功能。 2、创建 flickr app 的key http://www.flickr.com/services/ 3、配置与认证登陆 [code type="php" name="flickr.php"] // Start the session since phpFlickr uses it but does not start it itself session_start(); // Require the phpFlickr API require_once('phpFlickr-3.1/phpFlickr.php'); // Create new phpFlickr object: new phpFlickr('[API Key]','[API Secret]') $flickr = new phpFlickr('[API KEY]','[API SECRET]', true); // Authenticate; need the "IF" statement or an infinite redirect will occur if(empty($_GET['frob'])) { $flickr->auth('write'); // redirects if none; write access to upload a photo } else { // Get the FROB token, refresh the page; without a refresh, there will be "Invalid FROB" error $flickr->auth_getToken($_GET['frob']); header('Location: flickr.php'); exit(); } [/code] 这里需要注意的是,会有认证过程会有浏览器跳转,不能纯命令行模式执行该程序。 在获取到token后,可取到token放在命令行执行。 首先执行,$_SESSION['phpFlickr_auth_token'] = '12345674612259315-b717abcdefgggggg'; 再使用$flickr->auth('write');的时候就无浏览器跳转了,进入非交互模式了状态了。 但目前还不清楚这个token能使用多长时间。 4、上传图片 认证通过后,可使用$flickr->sync_upload('/path/to/anyimage.jpg'); 这个调用的返回值为图片的ID,一个大数字。 程序可记录这个图片ID,访问图片。 5、图片归类 flickr有图片集的概念,也就是图片分类, 可以使用相关的api把上传后的图片放到不同的分类中。 |
原文: http://qtchina.tk/?q=node/736 |
Powered by zexport
|