Socket
Socket
Sign inDemoInstall

metaget

Package Overview
Dependencies
63
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.0.4 to 1.0.5

108

index.js

@@ -6,60 +6,60 @@ // A module to fetch HTML meta tags from a remote URL

module.exports = {
fetch: function (uri, user_options, callback) {
var options = {
url: uri,
fetch: function (uri, user_options, callback) {
var options = {
url: uri,
timeout: 5000,
headers: {
'User-Agent': 'request'
}
};
// setup the args/user_options
var user_args = [];
for (var i = 0; i < arguments.length; i++) {
user_args.push(arguments[i]);
}
// remove these from arg array
uri = user_args.shift();
callback = user_args.pop();
// get user_options if specified
if(user_args.length > 0){
user_options = user_args.shift();
}else{
user_options = null;
}
headers: {
'User-Agent': 'request'
}
};
// override default headers
if(user_options){
options.headers = user_options.headers;
}
request.get(options, function (error, response, body) {
if (!error && response.statusCode === 200){
var $ = cheerio.load(body);
var meta = $('meta');
var keys = Object.keys(meta);
var meta_obj = {};
keys.forEach(function (key){
if (meta[key].attribs != undefined) {
if (meta[key].attribs.property && meta[key].attribs.content) {
meta_obj[meta[key].attribs.property] = meta[key].attribs.content;
}
if (meta[key].attribs.name && meta[key].attribs.content) {
meta_obj[meta[key].attribs.name] = meta[key].attribs.content;
}
}
});
callback(null, meta_obj);
}else{
if(typeof response.statusCode !== 'undefined'){
// setup the args/user_options
var user_args = [];
for (var i = 0; i < arguments.length; i++) {
user_args.push(arguments[i]);
}
// remove these from arg array
uri = user_args.shift();
callback = user_args.pop();
// get user_options if specified
if (user_args.length > 0) {
user_options = user_args.shift();
} else {
user_options = null;
}
// override default headers
if (user_options) {
options.headers = user_options.headers;
}
request.get(options, function (error, response, body) {
if (!error && response.statusCode === 200) {
var $ = cheerio.load(body);
var meta = $('meta');
var keys = Object.keys(meta);
var meta_obj = {};
keys.forEach(function (key) {
if (meta[key].attribs != undefined) {
if (meta[key].attribs.property && meta[key].attribs.content) {
meta_obj[meta[key].attribs.property] = meta[key].attribs.content;
}
if (meta[key].attribs.name && meta[key].attribs.content) {
meta_obj[meta[key].attribs.name] = meta[key].attribs.content;
}
}
});
callback(null, meta_obj);
} else {
if (response && typeof response.statusCode !== 'undefined') {
callback('Response code: ' + response.statusCode, null);
}else{
} else {
callback(error, null);
}
}
});
}
};
}
});
}
};
{
"name": "metaget",
"version": "1.0.4",
"version": "1.0.5",
"description": "A Node.js module to fetch HTML meta tags (including Open Graph) from a remote URL",

@@ -21,3 +21,3 @@ "main": "index.js",

],
"author": "Mark Moffat <mrvautin@gmail.com> (http://mrvautin.com)",
"author": "Mark Moffat <hi@markmoffat.com> (https://markmoffat.com)",
"license": "MIT",

@@ -24,0 +24,0 @@ "repository": {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc