fix: remove vulnerable deprecated npm dependency "request" + upgrade all packages
This commit is contained in:
parent
f5f16961b0
commit
bfc43eef33
|
@ -1,8 +1,6 @@
|
|||
const router = require('express').Router();
|
||||
const request = require('request');
|
||||
|
||||
router.get('/cvr/:cvr', (req, res, next) => {
|
||||
// TODO: ratelimits?
|
||||
const cvr_regex = /^\d{8}$/g;
|
||||
const cvr_api = cvr => `https://cvrapi.dk/api?search=${cvr}&country=dk`;
|
||||
|
||||
|
@ -11,35 +9,33 @@ router.get('/cvr/:cvr', (req, res, next) => {
|
|||
return next({name: 'Server-side validering', message: 'Forkert CVR format.'});
|
||||
}
|
||||
|
||||
const cvr_api_options = {
|
||||
url: cvr_api(req.params.cvr),
|
||||
fetch(cvr_api(req.params.cvr), {
|
||||
headers: {
|
||||
'User-Agent': 'frifaktura.dk | n@nikobojs.com'
|
||||
}
|
||||
};
|
||||
}).then(async (cvrres) => {
|
||||
|
||||
request(cvr_api_options, (err, response, body) => {
|
||||
if (err) return next('server fejl');
|
||||
let json_body = null;
|
||||
if (cvrres.headers.get('Content-Type').includes('application/json')) {
|
||||
json_body = await cvrres.json();
|
||||
} else {
|
||||
throw new Error('cvrapi.dk did not return JSON!');
|
||||
}
|
||||
|
||||
if(response.statusCode == 404) {
|
||||
if(cvrres.status == 404) {
|
||||
res.statusCode = 404;
|
||||
return next({name: 'kunne ikke finde firma'});
|
||||
}
|
||||
else if (response.statusCode != 200){
|
||||
console.log('cvr respons:', response.statusCode);
|
||||
else if (cvrres.status != 200){
|
||||
res.statusCode = 500;
|
||||
return next({name: 'cvr api returnerede en fejl', message: ''});
|
||||
}
|
||||
|
||||
let json_body;
|
||||
try {
|
||||
json_body = JSON.parse(body);
|
||||
res.json(json_body);
|
||||
}
|
||||
catch(e) {
|
||||
res.statusCode = 500;
|
||||
return next({name: 'cvrapi.dk returnerede ikke json', message: ''});
|
||||
}
|
||||
res.json(json_body);
|
||||
}).catch(err => {
|
||||
console.error(err)
|
||||
res.statusCode = 500;
|
||||
return next({name: 'cvrapi.dk integrationen virker ikke p.t :/', message: ''});
|
||||
});
|
||||
});
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load Diff
14
package.json
14
package.json
|
@ -13,16 +13,14 @@
|
|||
"tmux": "NODE_ENV=development ./tmux_dev.sh"
|
||||
},
|
||||
"dependencies": {
|
||||
"ejs": "^3.1.8",
|
||||
"express": "^4.18.2",
|
||||
"formidable": "^2.1.1",
|
||||
"node-latex": "^3.1.0",
|
||||
"nodemailer": "^6.9.1",
|
||||
"request": "^2.88.2"
|
||||
"ejs": "^3.1.9",
|
||||
"express": "^4.18.3",
|
||||
"formidable": "^3.1.5",
|
||||
"node-latex": "^3.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"minify": "^9.2.0",
|
||||
"nodemon": "^2.0.20"
|
||||
"minify": "^11.1.1",
|
||||
"nodemon": "^3.1.0"
|
||||
},
|
||||
"nodemonConfig": {
|
||||
"ignore": [
|
||||
|
|
Loading…
Reference in New Issue