Skip to content

GS1-lahendaja

GS1-lahendaja

GS1-lahendaja on DPP avalik lugemiskiht. Kanooniline URL näeb välja selline:

https://qr3.app/01/{GTIN}
https://qr3.app/01/{GTIN}/10/{LOT}
https://qr3.app/01/{GTIN}/21/{SERIAL}
https://qr3.app/01/{GTIN}/10/{LOT}/21/{SERIAL}

DPP loomisel (POST /v1/dpp) kehtivad järgmised reeglid: serial ja lot peavad kasutama turvalisi GS1 teekonna segmente: ainult A-Z, a-z, 0-9, ., _, ~, - ja pikkusega 1 kuni 20 märki. Reserveeritud URL-i eraldajad lükatakse tagasi, et kanooniline link jääks lahendatavaks.

Sisuläbirääkimised (Content Negotiation)

Sama lahendaja tagastab sõltuvalt päisest Accept erinevaid esitusi:

AcceptVastus
text/htmlTarbija HTML
application/ld+jsonJSON-LD
application/jsonToores DPP-JSON
application/linkset+jsonAlternatiividega linkset

Avalikult nähtavad teekonnad

  • GET /01/... on kanooniline lahendaja
  • GET /dpp/:gtin/:serial?lot=... on HTML-alias
  • GET /v1/dpp/:id/qr.svg tagastab SVG
  • GET /v1/dpp/:id/qr.png tagastab PNG
  • GET /v1/dpp/:id/qr.pdf tagastab PDF-i
  • GET /v1/dpp/:id/qr.eps tagastab EPS-i

QR-varade nähtavus sõltub DPP olekust:

  • live on ilma autentimiseta avalikult kättesaadav
  • draft ja archived vajavad kehtivat autentimiskonteksti ja tööruumi (Workspace) juurdepääsu
  • Vigane autentimine tagastab koodi 401
  • Mittenähtavad oder võõrad tööruumid tagastavad koodi 404

Varukäitumine (Fallback)

Kui kohalik vaste puudub, suunab GS1-lahendaja päringu koodiga 307 aadressile https://id.gs1.org. GTIN-i aliase /dpp/:gtin/:serial?lot=... puhul kehtib see ka vigase GTIN-i kontrollnumbri korral: gtin, lot ja serial kodeeritakse eraldi URL-i teekonnasegmentidena, sealhulgas reserveeritud eraldajad. Ümbersuunamine ei kinnita GTIN-i kehtivust ega andmete olemasolu GS1-s.

Erand: kui dekodeeritud identifikaator on ainult . või .., vastab kohaliku vasteta alias koodiga 422, vorminguga application/problem+json, tüübiga https://docs.qr3.app/errors/validation ja asjaomase väljaga loendis errors[], ilma ümbersuunamiseta. URL-i parserid normaliseerivad need segmendid ka kodeeritud kujul. Väärtusi nagu LOT.1 ja ... saab endiselt edasi suunata. Erand puudutab ainult seda vasteta aliast; loomise valideerimine, kanooniline lahendaja ja olemasolevad vasted jäävad muutumatuks.

GET /dpp/{GTIN}/UNKNOWN?lot=LOT%2F1
307 Location: https://id.gs1.org/01/{GTIN}/10/LOT%2F1/21/UNKNOWN
GET /dpp/{GTIN}/UNKNOWN?lot=.
422 Content-Type: application/problem+json

Praktika

  1. Loo DPP juhtpaneelil (Dashboard).
  2. Kasuta GS1 URI-d QR-koodi sihtkohana.
  3. Suuna tarbivad süsteemid päise Accept abil soovitud vormingule.