Использование Firefox Nightly 52, когда мой файл JS делает запрос с fetch
API, ответ мусор.
Это генерируется Laravel 5.3 с использованием return response()->json([...]);
и отправлено в браузер с помощью nginx 1.11.4 через HTTP / 2.
Ответ, согласно вкладке сети в инструментах разработчика, не имеет смысла. Например:
å�älNe?§Z¾tcpí�H-=¼¾a8ÀÎö÷½@Q×(Áò,ðL(¨m"(.âäG{QýÝ8çDµvÙî«ü0=îHù}Úvÿ Ãß"ø\pð=îâuâø¹Ëà#8Zý©³Hkò!?dô³Õ*AD#Ð.hõþ>î¤ô¾}ØJ$ñê;je]¤�¡F$¹¶JS»ýݤþ¸Ëï~÷ãó!.dQQXfX¢³3¢è?^í\;Ü 'Ù»DPT*&$³
Когда я использую опцию copy as cURL, я получаю сообщение об ошибке, что cURL не поддерживает HTTP / 2, т.е. --2.0
вариант. При отбрасывании опции я получаю правильный ответ, правильно сформированный JSON с ожидаемыми данными.
Другое различие может быть сжатие brotli. Ответ, отправленный в firefos, сжимается по-братски, учитывая, что firefox говорит, что он принимает это в заголовках запроса, а cURL — нет.
Редактировать: Это является сжатие brotli, если я отключу его для application/json
ответы, так что nginx возвращается к сжатию gzip, мой javascript работает.
Задача ещё не решена.
Других решений пока нет …