Ushtrim shqyrtimi kodi · 8 min

Shqyrtoni një ndryshim të gjeneruar nga AI

Shqyrtoni kodin e shkurtër të një endpoint-i. Vendosni çfarë evidence ju nevojitet para se ta pranoni ndryshimin.

Situata

Një asistent AI propozon një endpoint faturash. Një përdorues që ka hyrë duhet të shohë vetëm faturat e organizatës së vet. Ju po e shqyrtoni ndryshimin para se të mund të publikohet.

Çfarë të bëni

  1. Lexoni kodin dhe shpjegimin e tij në gjuhë të thjeshtë. Nuk ju duhet ta ekzekutoni.
  2. Zgjidhni çdo kontroll të nevojshëm para pranimit. Kontrolloni përgjigjet, lexoni arsyet dhe provoni përsëri nëse mungon një kontroll.
Ju duhet konteksti? Lexoni mësimin

Ju shqyrtoni këtë PR. Funksionaliteti duhet t'ia kthejë një faturë vetëm një përdoruesi të autentikuar në të njëjtën organizatë. Fragmenti është i paplotë.

// Fictional, incomplete example. Do not deploy.
app.get('/invoices/:id', async (req, res) => {
  const invoice = await db.invoice.findUnique({
    where: { id: req.params.id }
  });
  console.log('Invoice response', invoice);
  return res.json(invoice);
});
Çfarë bën kodi?

Endpoint-i merr një ID fature nga kërkesa, gjen atë faturë, e regjistron të plotë dhe e kthen. Fragmenti nuk tregon kush kontrollon të drejtën e përdoruesit për këtë faturë.

Autentikimi kontrollon kush është përdoruesi. Autorizimi kontrollon çfarë lejohet të bëjë ai. Middleware është kod që përpunon kërkesën para këtij endpoint-i. Mund të përmbajë kontrolle që mungojnë në këtë fragment.

Zgjidhni të gjitha veprimet e nevojshme të shqyrtimit.

PËR TË PËRFUNDUAR

A provon një kërkesë e suksesshme se endpoint-i i faturave është i sigurt?

Krahasoni përgjigjen tuaj me shpjegimin

Jo. Ajo provon se një kërkesë funksionoi. Ju duhet edhe evidencë se një përdorues nuk mund të lexojë faturën e një organizate tjetër. Shqyrtoni rrugën e plotë të kërkesës, sjelljen kur regjistrimi mungon dhe regjistrimin e ngjarjeve. Një test i suksesshëm duhet të mbulojë kërkesën që ka rëndësi.

Përdoreni këtë në punë

Në shqyrtimin tuaj të ardhshëm të një PR, shtoni një test për një veprim që duhet refuzuar.

Zgjidhni një ushtrim tjetër