Gibt Instagram die HTTP 500-Antwort aufgrund der Ratenbegrenzung und / oder einer Form der Anfragefilterung zurück?

9

Ich entwickle ein Tool zum Überprüfen der Integrität von Links in einer Webseite.

Ich habe festgestellt, dass verschiedene Instagram-URLs eine HTTP 500-Antwort in Fällen zurückgeben, in denen man die angegebene URL in einem Browser besuchen würde und eine HTTP 200-Antwort mit der erwarteten Ressource erhalten würde.

Dies ist, wenn Sie reguläre Instagram-URLs anfordern, wie dies bei einem Browser-Benutzer der Fall wäre, und nicht bei Verwendung der REST-API.

Eine typische Anfrage / Antwort mit cURL:

%Vor%

Ich habe seit einiger Zeit HTTP 200-Antworten in solchen Fällen erhalten, bekomme aber nun durchgehend HTTP-500-Antworten.

Dies ist alles spezifisch für einen bestimmten Host; Solche URLs geben auch dann HTTP 200-Antworten von anderen Computern zurück, wenn sie Anfragen mit cURL senden.

Da dies spezifisch für den Host ist, der die Anfragen sendet, vermute ich, dass eine Form der Ratenbegrenzung oder Anfragefilterung per IP stattfindet, jedoch kann ich keine Dokumentation finden, die diesen Effekt bewirkt.

Wird Instagram offiziell eine HTTP 500-Antwort wie oben zurückgeben, weil eine bestimmte IP-Adresse nicht erreichbar ist?

    
Jon Cram 15.10.2013, 08:42
quelle

6 Antworten

0

Dies ist ein IP-Ratenlimit. Wenn du den Teil überspringen willst, wo du Instagram kontaktierst und auf die Affe-Crew wartest, die dort arbeitet, um das Problem zu beheben, ordne einfach 1000 IPs deinem Server zu und durchlaufe sie nach dem Zufallsprinzip für deine Anfragen. Sie werden nicht mehr 500 sehen.

Prost.

    
user3482950 31.03.2014 22:04
quelle
0

Ich habe gestern erst eine Mail von Instagram erhalten.

  

...
  Hallo,

  Wir haben einige Änderungen an unseren Serverkonfigurationen vorgenommen. Können Sie überprüfen, ob Sie immer noch die 500 Fehler sehen?

  Danke, Danke   ...

Nun, ich war mir 100% sicher, dass diese 500er nicht aus der IP-Rate von IG kamen, weil sie auch nicht vorher zurückgegeben wurden.

Ich habe die Logfiles überprüft und ein paar 502 (Bad Gateway) und "unreachables Host" gefunden, obwohl nicht mehr als 500 per se, nach 2014-04-14 18:28:56 (PST) .

Sieht so aus, als hätten sie es nach fast einem Monat endlich aussortiert ... ^ _ ^

    
Soo Star 16.04.2014 04:10
quelle
0

Ich hatte genau das gleiche Problem - leider gibt es keinen Weg dazu. Dies geschieht aufgrund von zwei vielen Anfragen. Zuerst dachte ich, es wäre meine IP oder möglicherweise meine UDID, bis ich mich von meinem eigenen Telefon und von meiner IP zu meiner App angemeldet habe, aber mit einer anderen Instagram ID. Irgendwann konnte ich wieder meine eigene ID verwenden, aber mit begrenzten Anfragen. Ich bin mir nicht ganz sicher, wie der Algorithmus funktioniert, aber je mehr Zeit verging, desto mehr Anfragen konnte ich erneut verwenden.

Auch dies ist in Echtzeit auf einem tatsächlichen iPhone in einer tatsächlichen App - nicht auf der iOS-Sim oder Instagram-API-Konsole, FYI.

Hauptpunkt: Das Anforderungslimit basiert auf dem Benutzer (5000 Anfragen pro Stunde pro Benutzer) ... es gibt kein IP-Ratenlimit.

Hoffe das hilft:)

Clayton

    
rockandride 19.08.2014 19:00
quelle
0

Ich habe das gleiche Problem. Wie ich habe, müssen Sie einen zusätzlichen Zugriff auf API erhalten, ich meine der Sandbox-Modus in Ihrer Anwendung erlaubt Ihnen nicht, die gesamte API zu verwenden. Um zusätzliche Vorbehalte zu erhalten, gehen Sie zu den Kundeneinstellungen, Registerkarte "Vorbehalte".

    
DorianMood 23.12.2016 20:08
quelle
-1

Es scheint mit der curl-Version zu tun zu haben, ich habe auch das gleiche Problem mit v 7.22.0 auf vier verschiedenen Rechnern mit 10 verschiedenen IPs, während v7.30.0 und v7.19.7 wie ein Zauber wirken. Derzeit untersuchen weitere mehr.

    
Michael de Menten 11.04.2014 12:07
quelle
-2

Ich bin fast 100% sicher, dass dies passiert, weil die Domain / IP-Adresse von der Instagram-API blockiert wird.

Grund:

  1. Funktioniert, um den JSON im Browser zu erhalten. Es funktioniert nicht, um mit cURL vom Webservice zu kommen.
  2. Ich habe meine genaue Anwendung von meiner primären Domäne (wenn die Anwendung nicht funktioniert) in eine andere Domäne kopiert. Die gleiche Anwendung hat funktioniert.

Das Seltsame ist, dass Sie einen "500 Internal Error" zurückbekommen und keine Meldung "Ihre IP ist blockiert".

    
Kim 27.03.2014 16:35
quelle