Dauerhaft 500er Error ?

Moin. ich habe meine Playground-Frontend-Testseite für jede Aktion ein Api-Autruf, also listing, detail, history vor und zurück.

Kann es sein, dass die API eine Zugriffsbeschränkung hat, z.b. X Zugriffe pro Sekunde ? Ich bekomme am laufenden Band 500er Error zur API schnittstelle. Teilweise kann ich den ersten Aufruf der Site (1 Request) noch nichtmal initialisieren.

Meine IP ist fest. Was mich auch irritiert ist, dass der jquery ajax request (-method) doppelt, einmal mit OPTIONS und einmal mit GET raus geht, obwohl ich nur GET eingestellt habe und nur 1 request mache.

$.ajax({
            dataType: "json",
            url: xxx.url + endpoint,
            headers: {"x-sw-access-key":xxx.accessKey},
// cache: false,
            type: "GET",
            success: function(result){
                xxx.result = result;
                history.pushState({endpoint:endpoint,renderer:renderer},"title",stateUrl);
            }

        });

Danke und Gruss

EDIT, ggf liegt dass mit dem doppelten aufruf an history.pushstate, und dem eventlistener der bei popstate einen neuen api request macht. aber wieso der 500er error?

Moin brettformkopp,

ich habe auch mal die storefront-api getestet und konnte den Fehler nachstellen. Ein Rate Limit für die API ist zurzeit nicht gesetzt. Das Problem lag an einem der Appserver. Das ganze sollte nun wieder wie gewohnt funktionieren.

Das der Browser manchmal zwei Requests sendet ist okay. Bei dem OPTIONS Request handelt es sich um einen sogenannten preflight request. Hier findest du ein paar Informationen dazu: Preflight request - MDN Web Docs Glossary: Definitions of Web-related terms | MDN

Der Borwser kümmert sich automatisch um diesen Request ohne das man dort einen Einfluss drauf hat.

Das history.pushState sollte für den Request selber egal sein, da es nur ausgeführt wird, wenn der Request erfolgreich war.

Viele Grüße!

1 „Gefällt mir“

Jetzt ist es 404 - No route found for „GET /storefront-api/product“

Moin brettvormkopp! Die Routen sind nun versioniert. Daher lautet alles /storefront-api/v1/… Dokumentation wird dann noch angepasst  Halo

1 „Gefällt mir“