block-lab icon indicating copy to clipboard operation
block-lab copied to clipboard

Block failing to render in editor

Open BenHarris opened this issue 5 years ago • 15 comments

When attempting to render a block in the editor, the following error is displayed when the request size is greater than the web servers' limit (LimitRequestLine on Apache, defaulting to 8190):

image

I hit the issue when building a team block with a repeater, where each of the 10 team members has some metadata and a bio.

It seems to me that the best solution would be to switch to using POST rather than GET.

BenHarris avatar Sep 23 '19 13:09 BenHarris

Thanks for bringing this up!

Hi @BenHarris, Thanks for opening this. Could you please help with some questions?

  1. Does that 'Error loading block' display appear only in the 'preview' display of the block, like: example-preview-of-block

  2. Does the 'control' display still work: appear-here

  3. Is the error occurring when making a POST request in your environment?

In my environment, it looks like it makes a GET request for the 'preview' display (ServerSideRender): get-request-here

Let me see if there's a way around this, though there probably won't be a quick fix. It uses ServerSideRender from Gutenberg.

As you might have seen, there have been issues when a block has a lot of content, like in #254.

kienstra avatar Sep 23 '19 17:09 kienstra

Hey @kienstra,

  1. Yes
  2. Yes
  3. Not quite sure what you mean

Sorry, didn't see that issue. It is the same problem, only I found the root cause!

BenHarris avatar Sep 23 '19 17:09 BenHarris

Hi @BenHarris, Thanks, that helps!

It seems to me that the best solution would be to switch to using POST rather than GET.

Thanks, where do you see that it's making a POST request? Locally, it looks like it's making a GET request, though I could be wrong:

get-request-here

kienstra avatar Sep 23 '19 17:09 kienstra

Ah, sorry. You're saying it should switch to use POST instead of GET.

kienstra avatar Sep 23 '19 17:09 kienstra

I'll see if that might help. It would involve reimplementing ServerSideRender, so I'm not sure about it.

kienstra avatar Sep 23 '19 17:09 kienstra

@lukecarbis pointed out that this Gutenberg issue is related: https://github.com/WordPress/gutenberg/issues/16396

kienstra avatar Sep 24 '19 01:09 kienstra

Closing in favour of https://github.com/WordPress/gutenberg/issues/16396.

lukecarbis avatar Sep 28 '19 23:09 lukecarbis

Another user just reported this in Slack.

We might look at forking ServerSideRender, and registering a POST endpoint for it, as suggested in https://github.com/WordPress/gutenberg/issues/16396#issuecomment-508709339

kienstra avatar Jan 06 '20 04:01 kienstra

Reopening since this is an active bug that isn't resolved.

lukecarbis avatar Jan 30 '20 09:01 lukecarbis

Yeah, this keeps coming up.

As mentioned in https://github.com/WordPress/gutenberg/issues/16396#issuecomment-508709339, one solution might be making a Core patch and a Gutenberg PR. But I don't think those are likely to be merged, as WordPress doesn't recommend ServerSideRender.

We could fork ServerSideRender, and register a POST endpoint for it, as suggested in https://github.com/WordPress/gutenberg/issues/16396#issuecomment-508709339. But then there would be 2 endpoints registered for each post, one through the register_block_type() call, and the POST endpoint that we add.

This might have scaling issues, and would probably be overkill for most users.

kienstra avatar Jan 30 '20 16:01 kienstra

I don't know if it helps, but I do not have that issue with the 1.4.1 version of block lab.

So I stick with that version beacause all of my blocks aren't displaying with version 1.5 and above.

Foine avatar Feb 13 '20 14:02 Foine

Hi @Foine, Thanks for bringing that up.

Hm, it's strange that the issue didn't appear in 1.4.1. Do you remember what the console error was when that error appeared?

kienstra avatar Feb 13 '20 16:02 kienstra

Hi @BenHarris,

Sorry this has taken so long, and hope you're doing well.

If you're still interested, could you please test a fix for the issue?

https://github.com/getblocklab/block-lab/pull/524#issuecomment-608972897

Thanks, and have a great weekend.

kienstra avatar Apr 04 '20 04:04 kienstra

Hi @kienstra,

No problem at all!

Have just tested and it worked as expected 👍 great work!

BenHarris avatar Apr 06 '20 09:04 BenHarris

Thanks, @BenHarris! That helps a lot having you test it, glad that it works.

It'll probably be in our next release.

kienstra avatar Apr 06 '20 17:04 kienstra