Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
twitter-ng is an improved version of AvianFlu's ntwitter which is based on jdub's node-twitter, which in turn was inspired by, and uses some code from, technoweenie's twitter-node.
You can install twitter-ng and its dependencies with npm: npm install twitter-ng
.
The keys listed below can be obtained from dev.twitter.com after setting up a new App.
var twitter = require('twitter-ng');
var twit = new twitter({
consumer_key: 'Twitter',
consumer_secret: 'API',
access_token_key: 'keys',
access_token_secret: 'go here'
});
This example assumes that you use express.
app.get('/twitter_signin', restrict, function(req, res, next) {
var twit = new twitter({
consumer_key: 'KEY',
consumer_secret: 'SECRET',
oauth_callback: 'https://example.org/twitter_callback'
});
twit.login()(req, res, next);
});
app.get('/twitter_callback', restrict, function(req, res){
var twit = new twitter({
consumer_key: 'KEY',
consumer_secret: 'SECRET',
});
twit.callback()(req, res, function() {
console.log("Access Token: " + req.session.oauth_access_token);
console.log("Access Token Secret: " + req.session.oauth_access_token_secret);
});
});
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 twitter-ng/' + twitter.VERSION,
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);
});
});
twitter-ng 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);
});
Lots of people contribute to this project. You should too!
FAQs
Asynchronous Twitter REST/stream/search client API for node.js.
We found that twitter-ng 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.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.