mirror of
https://github.com/Lissy93/web-check.git
synced 2024-11-25 09:43:13 +01:00
Return plain JSON, to be handled by middleware instead
This commit is contained in:
parent
c169a3762d
commit
8a7b024e99
@ -97,10 +97,7 @@ const checkDomainAgainstDnsServers = async (domain) => {
|
||||
const handler = middleware(async (url) => {
|
||||
const domain = new URL(url).hostname;
|
||||
const results = await checkDomainAgainstDnsServers(domain);
|
||||
return {
|
||||
statusCode: 200,
|
||||
body: JSON.stringify({ blocklists: results })
|
||||
};
|
||||
return { blocklists: results };
|
||||
});
|
||||
|
||||
module.exports = middleware(handler);
|
||||
|
16
api/hsts.js
16
api/hsts.js
@ -8,11 +8,8 @@ const handler = async (url, event, context) => {
|
||||
body: JSON.stringify({ error: message }),
|
||||
};
|
||||
};
|
||||
const hstsIncompatible = (message, statusCode = 200) => {
|
||||
return {
|
||||
statusCode: statusCode,
|
||||
body: JSON.stringify({ message, compatible: false }),
|
||||
};
|
||||
const hstsIncompatible = (message, compatible = false, hstsHeader = null ) => {
|
||||
return { message, compatible, hstsHeader };
|
||||
};
|
||||
|
||||
|
||||
@ -35,14 +32,7 @@ const handler = async (url, event, context) => {
|
||||
} else if (!preload) {
|
||||
resolve(hstsIncompatible(`HSTS header does not contain the preload directive.`));
|
||||
} else {
|
||||
resolve({
|
||||
statusCode: 200,
|
||||
body: JSON.stringify({
|
||||
message: "Site is compatible with the HSTS preload list!",
|
||||
compatible: true,
|
||||
hstsHeader: hstsHeader,
|
||||
}),
|
||||
});
|
||||
resolve(hstsIncompatible(`Site is compatible with the HSTS preload list!`, true, hstsHeader));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
10
api/ports.js
10
api/ports.js
@ -73,17 +73,11 @@ const handler = async (url, event, context) => {
|
||||
return errorResponse('The function timed out before completing.');
|
||||
}
|
||||
|
||||
return {
|
||||
statusCode: 200,
|
||||
body: JSON.stringify({ openPorts, failedPorts }),
|
||||
};
|
||||
return { openPorts, failedPorts };
|
||||
};
|
||||
|
||||
const errorResponse = (message, statusCode = 444) => {
|
||||
return {
|
||||
statusCode: statusCode,
|
||||
body: JSON.stringify({ error: message }),
|
||||
};
|
||||
return { error: message };
|
||||
};
|
||||
|
||||
module.exports = middleware(handler);
|
||||
|
@ -10,7 +10,7 @@ const handler = async (url) => {
|
||||
{ auth: { username: process.env.TRANCO_USERNAME, password: process.env.TRANCO_API_KEY } }
|
||||
: {};
|
||||
const response = await axios.get(
|
||||
`https://tranco-list.eu/api/ranks/domain/${domain}`, { timeout: 2000 }, auth,
|
||||
`https://tranco-list.eu/api/ranks/domain/${domain}`, { timeout: 5000 }, auth,
|
||||
);
|
||||
if (!response.data || !response.data.ranks || response.data.ranks.length === 0) {
|
||||
return { skipped: `Skipping, as ${domain} isn't ranked in the top 100 million sites yet.`};
|
||||
|
@ -25,10 +25,7 @@ const handler = async (url) => {
|
||||
}
|
||||
|
||||
if (!sitemapUrl) {
|
||||
return {
|
||||
statusCode: 404,
|
||||
body: JSON.stringify({ skipped: 'No sitemap found' }),
|
||||
};
|
||||
return { skipped: 'No sitemap found' };
|
||||
}
|
||||
|
||||
sitemapRes = await axios.get(sitemapUrl, { timeout: 5000 });
|
||||
@ -40,23 +37,14 @@ const handler = async (url) => {
|
||||
const parser = new xml2js.Parser();
|
||||
const sitemap = await parser.parseStringPromise(sitemapRes.data);
|
||||
|
||||
return {
|
||||
statusCode: 200,
|
||||
body: JSON.stringify(sitemap),
|
||||
};
|
||||
return sitemap;
|
||||
} catch (error) {
|
||||
// If error occurs
|
||||
console.log(error.message);
|
||||
if (error.code === 'ECONNABORTED') {
|
||||
return {
|
||||
statusCode: 500,
|
||||
body: JSON.stringify({ error: 'Request timed out' }),
|
||||
};
|
||||
return { error: 'Request timed out' };
|
||||
} else {
|
||||
return {
|
||||
statusCode: 500,
|
||||
body: JSON.stringify({ error: error.message }),
|
||||
};
|
||||
return { error: error.message };
|
||||
}
|
||||
}
|
||||
};
|
||||
|
@ -50,16 +50,9 @@ const handler = async (url) => {
|
||||
};
|
||||
|
||||
if (Object.keys(metadata).length === 0) {
|
||||
return {
|
||||
statusCode: 200,
|
||||
body: JSON.stringify({ skipped: 'No metadata found' }),
|
||||
};
|
||||
return { skipped: 'No metadata found' };
|
||||
}
|
||||
|
||||
return {
|
||||
statusCode: 200,
|
||||
body: JSON.stringify(metadata),
|
||||
};
|
||||
return metadata;
|
||||
} catch (error) {
|
||||
return {
|
||||
statusCode: 500,
|
||||
|
Loading…
Reference in New Issue
Block a user