Siirry sisältöön

Käsittele pyyntörajoituksia ja palvelinvirheitä

Odota 429-vastausten jälkeen ja yritä turvallisia toimintoja varovasti uudelleen tilapäisten palvelinvirheiden jälkeen.

Päivitetty

Käsittele 429-vastaus

Pyyntörajoituksen hylkäämä pyyntö palauttaa 429 Too Many Requests -vastauksen, jonka detail.status on rate_limit_exceeded. Lue vastauksen otsakkeet ennen uutta yritystä:

  • Retry-After kertoo hylätyn pyynnön vähimmäisodotusajan sekunteina.
  • X-RateLimit-Limit kertoo rajoitusryhmän enimmäismäärän.
  • X-RateLimit-Remaining kertoo jäljellä olevien pyyntöjen määrän.
  • X-RateLimit-Reset kertoo, milloin rajoitusryhmän laskuri nollautuu.

Odota Retry-After-arvon mukainen aika ja yritä sitten uudelleen eksponentiaalisesti kasvavalla odotusajalla ja satunnaisella vaihtelulla. Vähennä rinnakkaisia pyyntöjä ja jonota tehtäviä sen sijaan, että lähettäisit suuren määrän pyyntöjä heti aikaikkunan nollautuessa.

Käsittele palvelinvirheet

500-vastauksen julkisessa rungossa on yleinen virhe ja request_id; sisäisiä poikkeustietoja ei palauteta. 503 voi tarkoittaa, että tarvittava palvelu on tilapäisesti poissa käytöstä.

Yritä vain tietoja lukevia pyyntöjä uudelleen rajatulla odotusajalla. Ennen luonti-, päivitys-, maksu- tai muun tilaa muuttavan pyynnön uusimista selvitä, valmistuiko ensimmäinen yritys. Aikakatkaisu tai 5xx-vastaus ei todista muutoksen epäonnistuneen, ja välitön uusintayritys voi suorittaa työn kahdesti.

Säilytä vianmääritystiedot

Tallenna aikaleima, metodi, polku, tila, vastauksen runko ja X-Request-Id. Älä koskaan kirjaa x-api-key-arvoa lokiin. Lopeta automaattiset uusintayritykset pienen, rajatun yritysmäärän jälkeen ja tuo virhe tarkistettavaksi.