Hi, we cannot get JS embed to work in our setup. I have read all the other similar topics and I have got this embedding to work in a total different project in the past. This one looks like something different…
On the external site, only our logo can be seen followed by “loading discussion…”
On Discourse, no topics are being created, even if the error log shows that the requests are coming.
We have reviewed the URLs. We have also tested adding a static URL (instead of a variable). Nothing.
(We have removed the template after the failed tests.)
Does this comment help? (this is out of my tech league):
The responses are successful 200s, and based on that discussion it seems like it’s failing to handle that response while scraping Bitwiggers, and it’s specifically failing when trying to handle the compression.
Based on inflate , it seems like it negotiated to use the deflate compression scheme, whereas I think the preferred would be gzip . Firefox’s requests indicate that it would handle both, but the server decides on gzip in that case.
Interesting, and thank you for filing the bug. Subscribed.
Trying to summarize our thoughts:
We have no control over that handling, but we don’t think it’s the webserver. What about the construction of the headers instead? If passed in as gzip, deflate , then the response should be gzipped. According to HTTP Specifications, the client should present the options, weighted or not, in order according to their preference. so if the request is preferring deflate over gzip, then gets a deflate. Isn’t then the problem in the code/request, because it received an encoding that it asked for and failed to handle it?
Maybe the problem is related to this?
There is a “merge” and what seems to be an expectation for gzip?
The admin of the other server is looking at how can gzip be forced on their end. Still, it would be interesting to know your thoughts about this.
(For reference, the server is AWS API Gateway; not something we have control over, aside from enabling/disabling compression.)
I also wonder whether we could apply a local patch to our Discourse to circumvent this gzip/deflate problem. Local patches are painful, but it is even more painful to have an integration of two sites with hundreds of pages to be embedded with Discourse discussions pending because of this problem.
Does this mean that we can update our instance right away, or is Discourse using their own staged repository for these libraries? Remembering the output of Discourse upgrades I believe that they are being pulled directly from upstream repositories, but I’d rather ask before touching our backend.
Thank you so much @Falco for your report upstream. You were absolutely right, and I added some noise that perhaps wasn’t that useful. My apologies, and thank you again.