Fanfou SDK for Node.js
npm i fanfou-sdk
import Fanfou from 'fanfou-sdk';
OAuth
const ff = new Fanfou({
consumerKey: '',
consumerSecret: '',
oauthToken: '',
oauthTokenSecret: ''
});
const timeline = await ff.getHomeTimeline();
XAuth
const ff = new Fanfou({
consumerKey: '',
consumerSecret: '',
username: '',
password: ''
});
await ff.xauth();
const timeline = await ff.getPublicTimeline({count: 10});
const status = await ff.createStatus({status: 'Hi Fanfou'});
Options
consumerKey
: The consumer keyconsumerSecret
: The consumer secretoauthToken
: The OAuth tokenoauthTokenSecret
: The OAuth token secretusername
: The Fanfou usernamepassword
: The Fanfou passwordprotocol
: Set the prototol, default ishttp:
apiDomain
: Set the API domain, default isapi.fanfou.com
oauthDomain
: Set the OAuth domain, default isfanfou.com
hooks
: Hooks allow modifications with OAuth
For more Fanfou API docs, see the Fanfou API doc.
For full SDK API, please refer to the documentation.
Examples
// Get request token
const token = await ff.getRequestToken();
// Get access token
const token = await ff.getAccessToken(token);
// Get timeline
const timeline = await ff.getHomeTimeline();
// Post status
const status = await ff.createStatus({status: 'post test'});
// Upload photo
const result = await ff.uploadPhoto({photo: fs.createReadStream(path), status: 'unicorn'});
// Get user
const user = await ff.getUser({id: 'lito'});
// Request Fanfou API by passing the URI
const timeline = await ff.get('/statuses/home_timeline', {count: 10});
const status = await ff.post('/statuses/update', {status: 'Hi Fanfou'});
Tips
Use hooks
for your reverse-proxy server
const ff = new Fanfou({
consumerKey: '',
consumerSecret: '',
oauthToken: '',
oauthTokenSecret: '',
apiDomain: 'api.example.com',
oauthDomain: 'example.com',
hooks: {
baseString: str => {
return str.replace('example.com', 'fanfou.com');
}
}
});
- nofan - CLI for Fanfou
- xiaofan - WeApp for Fanfou
- fanfou-streamer - Fanfou Streaming SDK for Node.js
- fanfou-sdk-browser - Fanfou SDK for browser
- fanfou-sdk-deno - Fanfou SDK for Deno
- fanfou-sdk-weapp - Fanfou SDK for WeApp
- fanfou-sdk-python - Fanfou SDK for Python
- alfred-fanfou - Alfred 3 workflow for Fanfou
- kap-fanfou - Kap plugin that share on Fanfou
- cerebro-fanfou - A cerebro plugin for Fanfou
- code-fanfou - A VS Code extension for Fanfou
- bitbar-fanfou - A BitBar plugin for Fanfou
MIT