Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
ntwitter is an upgraded version of jdub's node-twitter, which in turn was inspired by, and uses some code from, technoweenie's twitter-node.
You can install ntwitter and its dependencies with npm: npm install ntwitter
.
This library is, for the most part, the same API as node-twitter
. Much of the documentation below is straight from node-twitter
- credit goes to jdub for putting all this together in the first place.
The most significant API change involves error handling in callbacks. Callbacks should now look something like this:
function (err, result) {
if (err) {return callback(err)}
// Do something with 'result' here
}
Where callback
is the parent function's callback. (Or any other function you want to call on error.)
The keys listed below can be obtained from dev.twitter.com after setting up a new App.
var twitter = require('ntwitter');
var twit = new twitter({
consumer_key: 'Twitter',
consumer_secret: 'API',
access_token_key: 'keys',
access_token_secret: 'go here'
});
Interaction with other parts of Twitter is accomplished through their RESTful API. The best documentation for this exists at dev.twitter.com. Convenience methods exist for many of the available methods, but some may be more up-to-date than others. If your Twitter interaction is very important, double-check the parameters in the code with Twitter's current documentation.
Note that all functions may be chained:
twit
.verifyCredentials(function (err, data) {
console.log(data);
})
.updateStatus('Test tweet from ntwitter/' + twitter.VERSION,
function (err, data) {
console.log(data);
}
);
twit.search('nodejs OR #node', function(err, data) {
console.log(data);
});
The stream() callback receives a Stream-like EventEmitter:
Here is an example of how to call the 'statuses/sample' method:
twit.stream('statuses/sample', function(stream) {
stream.on('data', function (data) {
console.log(data);
});
});
Here is an example of how to call the 'statuses/filter' method with a bounding box over San Fransisco and New York City ( see streaming api for more details on locations ):
twit.stream('statuses/filter', {'locations':'-122.75,36.8,-121.75,37.8,-74,40,-73,41'}, function(stream) {
stream.on('data', function (data) {
console.log(data);
});
});
ntwitter also supports user and site streams:
twit.stream('user', {track:'nodejs'}, function(stream) {
stream.on('data', function (data) {
console.log(data);
});
stream.on('end', function (response) {
// Handle a disconnection
});
stream.on('destroy', function (response) {
// Handle a 'silent' disconnection from Twitter, no end/error event fired
});
// Disconnect stream after five seconds
setTimeout(stream.destroy, 5000);
});
If you contribute and would like to see your name here, please add it with your changes!
FAQs
Asynchronous Twitter REST/stream/search client API for node.js.
The npm package ntwitter receives a total of 28 weekly downloads. As such, ntwitter popularity was classified as not popular.
We found that ntwitter demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.