在應用程序內部進行Ajax調用時,Chrome隨機出現net::ERR_INCOMPLETE_CHUNKED_ENCODING
錯誤。例如:Ajax調用導致net :: ERR_INCOMPLETE_CHUNKED_ENCODING
$.get('https://mydomain/myapi/getAll')
Object {readyState: 1, getResponseHeader: function,
getAllResponseHeaders: function, setRequestHeader: function, overrideMimeType: function…}
jquery.js:8625 GET https://mydomain/myapi/getAllnet::ERR_INCOMPLETE_CHUNKED_ENCODING
返回JSON數據的後端使用PHP(5.3.9)和Apache(2.2.29)。
這些響應頭:
Cache-Control:no-cache, must-revalidate
Connection:Keep-Alive
Content-Type:text/html
Date:Thu, 30 Apr 2015 14:25:49 GMT
Expires:Sat, 26 Jul 1997 05:00:00 GMT
Keep-Alive:timeout=5, max=100
Last-Modified:Thu, 30 Apr 2015 14:25:50 GMT
Pragma:no-cache
Server:Apache/2.2.29 (Unix) mod_ssl/2.2.29 OpenSSL/0.9.8e-fips-rhel5
Transfer-Encoding:chunked
,我也可以在htaccess的配置中找到的唯一罕見的事情是
SetOutputFilter DEFLATE
我沒有訪問後端,但我我應該猜測這裏真正導致問題的原因。如果這意味着什麼,那麼相同的應用程序在WAMP環境中運行時沒有任何問題。最可能導致此錯誤的是什麼?
看到類似的事情與基於Ruby的後端,它使用Rack :: Chunked中間件(意味着我也得到了Transfer-Encoding:分塊響應)。奇怪的是,當我在_browser_中或通過curl請求URL時,一切正常...... –