Hallo, wir können JS-Einbettung in unserem Setup nicht zum Laufen bringen. Ich habe alle anderen ähnlichen Themen gelesen und diese Einbettung in einem völlig anderen Projekt bereits zum Laufen gebracht. Dieses hier scheint etwas anders zu sein…
Auf der externen Website ist nur unser Logo gefolgt von „Diskussion wird geladen…“ zu sehen.
Auf Discourse werden keine Themen erstellt, auch wenn das Fehlerprotokoll zeigt, dass die Anfragen eingehen.
Wir haben die URLs überprüft. Wir haben auch versucht, eine statische URL (anstelle einer Variablen) hinzuzufügen. Nichts.
Das Discourse-Fehlerprotokoll enthält diesen Fehler:
(Wir haben die Vorlage nach den fehlgeschlagenen Tests entfernt.)
Hilft dieser Kommentar? (das ist außerhalb meiner technischen Liga):
Die Antworten sind erfolgreich 200er, und basierend auf dieser Diskussion scheint es, dass es beim Scrapen von Bitwiggers nicht in der Lage ist, diese Antwort zu verarbeiten, und es scheitert speziell bei dem Versuch, die Komprimierung zu verarbeiten.
Basierend auf inflate scheint es, dass es die deflate-Komprimierung vereinbart hat, während ich denke, dass die bevorzugte gzip wäre. Firefox-Anfragen deuten darauf hin, dass es beides handhaben würde, aber der Server entscheidet in diesem Fall auf gzip.
Interessant, und danke für die Meldung des Fehlers. Abonniert.
Versuchen wir, unsere Gedanken zusammenzufassen:
Wir haben keine Kontrolle über diese Handhabung, aber wir glauben nicht, dass es am Webserver liegt. Was ist mit der Konstruktion der Header stattdessen? Wenn sie als gzip, deflate übergeben werden, sollte die Antwort komprimiert werden. Gemäß den HTTP-Spezifikationen sollte der Client die Optionen, gewichtet oder nicht, in der Reihenfolge seiner Präferenz angeben. Wenn die Anfrage also deflate gegenüber gzip bevorzugt, erhält sie deflate. Liegt das Problem dann nicht im Code/in der Anfrage, weil sie eine Kodierung erhalten hat, nach der sie gefragt hat, und diese nicht verarbeiten konnte?
Vielleicht hängt das Problem damit zusammen?
Es gibt ein “merge” und was wie eine Erwartung für gzip aussieht?
Der Administrator des anderen Servers prüft, wie gzip auf seiner Seite erzwungen werden kann. Dennoch wäre es interessant, Ihre Gedanken dazu zu erfahren.
(Zur Referenz: Der Server ist AWS API Gateway; wir haben keine Kontrolle darüber, außer die Komprimierung zu aktivieren/deaktivieren.)
Könnte mir jemand bei der Übersetzung der Antwort des Excon-Entwicklers helfen? Ich bin mir nicht sicher, wo das Problem liegt und wer es beheben könnte.
Ich frage mich auch, ob wir einen lokalen Patch auf unser Discourse anwenden könnten, um dieses gzip/deflate-Problem zu umgehen. Lokale Patches sind schmerzhaft, aber es ist noch schmerzhafter, eine Integration von zwei Websites mit Hunderten von Seiten zu haben, die wegen dieses Problems mit eingebetteten Discourse-Diskussionen blockiert ist.
Bedeutet das, dass wir unsere Instanz sofort aktualisieren können, oder verwendet Discourse sein eigenes Staging-Repository für diese Bibliotheken? Wenn ich mich an die Ausgabe von Discourse-Upgrades erinnere, glaube ich, dass sie direkt aus Upstream-Repositorys bezogen werden, aber ich frage lieber nach, bevor ich unseren Backend anfasse.
Ich habe mich entschieden, Discourse direkt zu fragen indem ich ein Upgrade durchgeführt und die Protokolle überprüft habe. Nachdem ich Folgendes gesehen habe:
haben wir es erneut versucht und JETZT FUNKTIONIERT DAS EINBETTEN!
Vielen Dank, @Falco, für deinen Bericht an die Entwickler. Du hattest absolut Recht, und ich habe einige Dinge hinzugefügt, die vielleicht nicht so nützlich waren. Meine Entschuldigung und nochmals vielen Dank.