0

When I test my website in SSL context with load balancer. Impossible to post a big GZIPed content (300kB) . The request freeze in firebug. If the request lighter, it works.

It works perflecty with Chrome or others browsers.

I don't see log request on the app engine instance. Don't see log in the nginx. Don't see log on load balancer during the request. When the request fail, I see logs and the logs say it take 60seconds (timeout)

I see the same problem here :

Ajax post being aborted by firefox (not seen in Chrome or IE) (Using fiddler proxy also worked)

Tried with "async: false" does not worked. Tried to use "setTimeout" around the ajax call does not worked.

Note that when I use the app directly to the instance without load balancer, opening the ports, it work perflectly.

It work perfectly in localhost with SSL configured. (self signed certificate)

Note that when I use the app without SSL and with the load balancer it work perflectly.

The request appear in firebug with empty information (the last request) and stay like this and without return code.

enter image description here

Following here, it could be relative to the load balancer configuration.

Firefox AJAX POST w/ FormData Never Completes

But it's the Google App engine load balancer. I don't have the hand on it and don't know the stack.

Equivalent problem here :

ajax request not work in Firefox

Also, when I use Fiddler proxy to intercept the request and decrypt it, it works !

maxiplay
  • 407
  • 1
  • 5
  • 13
  • I tried with a fetch request and i have : status: 502 statusText: "Bad Gateway" type: "basic" – maxiplay Jan 10 '20 at 15:11
  • Tried without sending a GZIP blob body but just a full json body, the request size go from 300kB to 1136kB and it works perfectly. So the problem is relative to blob or GZIP or the two under SSL with Firefox – maxiplay Jan 10 '20 at 16:18

1 Answers1

0

I used formData to send the GZIP data and it works now.

var formData = new FormData();
var blob = new Blob([binary]);
formData.append("file", blob);
that.postDataBody = formData;

instead of

 that.postDataBody = new Blob([binary]);
maxiplay
  • 407
  • 1
  • 5
  • 13