10月 072014
<< tesselでYo || Travis CIに環境変数を設定する >>
OAuthで使う新しいGyazo APIができてたので、Node.js用のラッパーを作った。今までのupload.cgiにアップロードする奴とは別の最近できたAPIっぽい。
https://www.npmjs.org/package/gyazo-api
https://github.com/shokai/node-gyazo-api
% npm install gyazo-api
アップロード
開発者としてアプリケーションを登録して、Access Tokenを取得してから
こういう風にアップロードできる。
var Gyazo = require('gyazo-api');upload関数はファイルパスでなくstreamやbufferも渡せる。
var client = new Gyazo('ACCESS_TOKEN');
client.upload('/path/to/file.jpg')
.then(function(res){
console.log(res.data.image_id);
console.log(res.data.permalink_url);
})
.catch(function(err){
console.error(err.stack);
});
他にアップロードした画像のリストを取得したり、削除もできる。
Gyazo API、response bodyにJSONで結果が返ってくるんだけどHTTP Headerにもx-per-pageとかx-current-pageとかついているので、res.responseにレスポンスオブジェクトそのまま付けておいた。
Travis CIで俺のアイコンをアップロードしたり消したりしているので、テスト実行する度にgyazo.com/historyに俺の写真が上がったり消えたりしててつらい