Ciao! Stiamo ricevendo un errore di embedding, l’iframe mostra
Errore di embedding
Referer:
Il referer non è stato inviato o non corrisponde a nessuno dei seguenti host:
nonostante i domini siano identici, e la console riporta:
Uncaught SyntaxError: Impossibile eseguire 'postMessage' su 'Window': Origine target non valida '' in una chiamata a 'postMessage'.
_embed-application-3723be59920e64ecda9d66b1e7c4c55378fb9dadfa7f422febd4f1b346c1aa05.js:6 Uncaught DOMException: Impossibile eseguire 'postMessage' su 'Window': Origine target non valida '' in una chiamata a 'postMessage'.
at e (https://sjc1.discourse-cdn.com/business5/brotli_asset/embed-application-3723be59920e64ecda9d66b1e7c4c55378fb9dadfa7f422febd4f1b346c1aa05.js:1:42)
at window.onload (https://sjc1.discourse-cdn.com/business5/brotli_asset/embed-application-3723be59920e64ecda9d66b1e7c4c55378fb9dadfa7f422febd4f1b346c1aa05.js:1:470)
Stiamo utilizzando la ‘Configurazione alternativa’, quindi l’argomento risolto non ci è molto utile.
(Configurazione alternativa) Collegamento a argomenti esistenti
Alcune persone preferiscono non far creare a Discourse gli argomenti sui loro forum in modo automatico. Preferiscono creare gli argomenti loro stessi, per poi indicare semplicemente al codice di embedding quale argomento associare. Puoi farlo modificando leggermente il tuo codice di embedding:
<div id='discourse-comments'></div> <script type="text/javascript"> DiscourseEmbed = { discourseUrl: 'http://discourse.example.com/', topicId: 12345 }; (function() { var d = document.createElement('script'); d.type = 'text/javascript'; d.async = true; d.src = DiscourseEmbed.discourseUrl + 'javascripts/embed.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(d); })(); </script>L’unica differenza qui è che abbiamo sostituito
discourseEmbedUrlcon l’ID di un argomento di Discourse. Se lo fai, non verrà creato alcun argomento e i commenti di quell’argomento verranno visualizzati automaticamente.
da Embed Discourse comments on another website via Javascript
Esiste un modo per debuggarlo facilmente? Da dove viene recuperato il referer e perché potrebbe essere vuoto?
È un problema noto/commune e c’è un modo per nascondere l’iframe o il suo contenuto quando si verifica un errore?
Cliccando sul codice sorgente dove si verifica l’errore, sembra che non riesca a trovare un referer per un postMessage nell’elemento #data-embedded.