| Conditions | 4 | 
| Total Lines | 38 | 
| Code Lines | 32 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Changes | 0 | ||
| 1 | import axios from "axios"; | ||
| 5 | |||
| 6 | export default async function getRegNummer( | ||
| 7 | req: VercelRequest, | ||
| 8 | res: VercelResponse | ||
| 9 | ): Promise<void> { | ||
| 10 |   const { regNummer = "" } = req.query; | ||
| 11 | |||
| 12 |   if (regNummer === undefined) { | ||
| 13 |     res.send({ error: "Mangler regNummer parameter" }); | ||
| 14 | return; | ||
| 15 | } | ||
| 16 | |||
| 17 |   const urlToFetch = `https://www.vegvesen.no/ws/no/vegvesen/kjoretoy/kjoretoyoppslag/v1/kjennemerkeoppslag/kjoretoy/${regNummer}`; | ||
| 18 | |||
| 19 |   try { | ||
| 20 | const response = await axios.get<IStatensVegvesenFullData>(urlToFetch); | ||
| 21 | |||
| 22 |     if (response.status === 200) { | ||
| 23 |       const { | ||
| 24 | kjennemerke, | ||
| 25 |         registrering: { forstegangsregistrering, forstegangsregistreringEier }, | ||
| 26 |         periodiskKjoretoykontroll: { sistKontrollert }, | ||
| 27 | } = response.data; | ||
| 28 | |||
| 29 |       const sanitizedData = { | ||
| 30 | kjennemerke: sanitize(kjennemerke), | ||
| 31 | forstegangsregistreringEier: sanitize(forstegangsregistreringEier), | ||
| 32 | forstegangsregistrering: sanitize(forstegangsregistrering), | ||
| 33 | sistKontrollert: sanitize(sistKontrollert), | ||
| 34 | }; | ||
| 35 | |||
| 36 | res.send(sanitizedData); | ||
| 37 |     } else { | ||
| 38 |       res.send({ error: "Feil under henting av data" }); | ||
| 39 | } | ||
| 40 |   } catch (error) { | ||
| 41 | console.error(error); | ||
| 42 |     res.send({ error: "Feil under henting av data" }); | ||
| 43 | } | ||
| 45 |