Ciao, non riusciamo a far funzionare JS embed nella nostra configurazione. Ho letto tutti gli altri argomenti simili e in passato sono riuscito a far funzionare questo embedding in un progetto completamente diverso. Questo sembra essere qualcosa di diverso…
Sul sito esterno, si vede solo il nostro logo seguito da “caricamento discussione…”
Su Discourse, non vengono creati argomenti, anche se il log degli errori mostra che le richieste stanno arrivando.
Abbiamo controllato gli URL. Abbiamo anche provato ad aggiungere un URL statico (invece di una variabile). Niente.
Il log degli errori di Discourse contiene questo Errore:
(Abbiamo rimosso il template dopo i test falliti.)
Questo commento aiuta? (è al di fuori della mia competenza tecnica):
Le risposte sono 200 di successo e, in base a quella discussione, sembra che non riesca a gestire quella risposta durante lo scraping di Bitwiggers, e fallisce specificamente quando tenta di gestire la compressione.
Sulla base di inflate, sembra che abbia negoziato per utilizzare lo schema di compressione deflate, mentre penso che la preferenza sarebbe gzip. Le richieste di Firefox indicano che gestirebbe entrambi, ma il server decide su gzip in quel caso.
Interessante, e grazie per aver segnalato il bug. Iscritto.
Proviamo a riassumere i nostri pensieri:
Non abbiamo controllo su quella gestione, ma non pensiamo sia il webserver. Che ne dici della costruzione degli header invece? Se passati come gzip, deflate, allora la risposta dovrebbe essere compressa in gzip. Secondo le specifiche HTTP, il client dovrebbe presentare le opzioni, pesate o meno, in ordine secondo la sua preferenza. quindi se la richiesta preferisce deflate rispetto a gzip, allora riceve un deflate. Non è quindi il problema nel codice/richiesta, perché ha ricevuto una codifica che ha richiesto e non è riuscito a gestirla?
Forse il problema è correlato a questo?
C’è un “merge” e quella che sembra essere un’aspettativa per gzip?
L’amministratore dell’altro server sta esaminando come forzare gzip dalla loro parte. Tuttavia, sarebbe interessante conoscere i tuoi pensieri a riguardo.
(Per riferimento, il server è AWS API Gateway; non è qualcosa che possiamo controllare, a parte abilitare/disabilitare la compressione.)
Mi chiedo anche se potremmo applicare una patch locale al nostro Discourse per aggirare questo problema di gzip/deflate. Le patch locali sono dolorose, ma è ancora più doloroso avere un’integrazione di due siti con centinaia di pagine da incorporare con discussioni di Discourse in sospeso a causa di questo problema.
Il maintainer di Excon ha effettuato un commit di una patch che in teoria risolve questo problema! A breve dovrebbe arrivare una nuova release di Excon, dice.
Ciò significa che possiamo aggiornare la nostra istanza subito, o Discourse sta usando il proprio repository staged per queste librerie? Ricordando l’output degli upgrade di Discourse, credo che vengano prelevati direttamente dai repository upstream, ma preferirei chiedere prima di toccare il nostro backend.
Grazie mille @Falco per la tua segnalazione upstream. Avevi assolutamente ragione, e ho aggiunto del rumore che forse non era così utile. Mi scuso e ti ringrazio ancora.