Bug Tracker

Modify

Ticket #4044 (closed bug: invalid)

Opened 5 years ago

Last modified 13 months ago

$.ajax POST in Firefox fails with a null data parameter

Reported by: garrett Owned by: garrett
Priority: major Milestone: 1.4.3
Component: ajax Version: 1.3.1
Keywords: Cc:
Blocking: Blocked by:

Description

Firefox has a bug where it does not send a Content-Length of 0 in a post when the post's body is omitted. Ordinarily, this works well with popular webservers... however, Squid (and possibly other proxies) complain and refuse to actually post.

Simply setting a Content-Length does not solve this issue; Firefox does not transmit custom Content-Length headers. The solution is to send an empty string instead of null. This makes Firefox send a Content-Length, and as a result, Squid is happy.

I am attaching patches for both jQuery 1.2.6 and 1.3.1 which fix this issue.

Attachments

jQuery-1.2.6-xhr-proxy.patch Download (820 bytes) - added by garrett 5 years ago.
fix for jQuery 1.2.6
jQuery-1.3.1-xhr-proxy.patch Download (820 bytes) - added by garrett 5 years ago.
fix for jQuery 1.3.1

Change History

Changed 5 years ago by garrett

fix for jQuery 1.2.6

Changed 5 years ago by garrett

fix for jQuery 1.3.1

comment:1 Changed 5 years ago by dmethvin

See als dup #4664.

comment:2 Changed 5 years ago by dmethvin

  • Summary changed from sending XHR posts with null bodies through a proxy (such as Squid) does not work in Firefox to $.ajax POST in Firefox fails with a null data parameter

Another vote to fix in dup #4667.

comment:3 Changed 5 years ago by jamon

This problem also exists with other HTTP methods that have content. In our case, we ran into it with "PROPFIND" (writing a Webdav client in jquery). The latest patch does not resolve this case.

comment:4 Changed 4 years ago by dmethvin

  • Milestone changed from 1.3.2 to 1.4.3

comment:5 follow-up: ↓ 6 Changed 3 years ago by snover

  • Owner set to garrett
  • Status changed from new to pending

Please confirm this is still an issue in the latest version of jQuery and supported versions of Firefox (3+ only). If this issue no longer occurs, you do not need to respond; the ticket will close automatically in 30 days.

comment:6 in reply to: ↑ 5 ; follow-up: ↓ 7 Changed 3 years ago by jess.hottenstein@…

Replying to snover:

Please confirm this is still an issue in the latest version of jQuery and supported versions of Firefox (3+ only). If this issue no longer occurs, you do not need to respond; the ticket will close automatically in 30 days.

This is still a problem in jQuery 1.4.3 with Firefox 3.0+.

comment:7 in reply to: ↑ 6 Changed 3 years ago by jess.hottenstein@…

Replying to jess.hottenstein@…:

This is still a problem in jQuery 1.4.3 with Firefox 3.0+.

Correction. This is a problem in jQuery 1.4.x with Firefox 3.0.x. As this only occurs with a squid proxy, I do not know how to duplicate this with fiddler. I have attached the request and response headers to my empty post request.

Response Headers Date Fri, 12 Nov 2010 19:45:30 GMT Server squid/2.6.STABLE21 Content-Type text/html; charset=UTF-8 Content-Length 2054 Expires Fri, 12 Nov 2010 19:45:30 GMT X-Squid-Error ERR_INVALID_REQ 0 X-Cache MISS from fw.example.com X-Cache-Lookup NONE from fw.example.com:3128 Via 1.0 fw.example.com:3128 (squid/2.6.STABLE21) Connection close

Request Headers Host User-Agent Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.19) Gecko/2010031706 Red Hat/3.0.19-1.el5_5 Firefox/3.0.19 Accept text/javascript, application/javascript, */*; q=0.01 Accept-Language en-us,en;q=0.5 Accept-Encoding gzip,deflate Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive 300 Connection keep-alive X-Requested-With XMLHttpRequest Referer  https:// Cookie Pragma no-cache Cache-Control no-cache

comment:8 Changed 3 years ago by trac-o-bot

  • Status changed from pending to closed
  • Resolution set to invalid

Automatically closed due to 14 days of inactivity.

comment:9 follow-up: ↓ 10 Changed 3 years ago by katiegengler

This is still happening in jQuery 1.5

comment:10 in reply to: ↑ 9 Changed 3 years ago by jitter

Replying to katiegengler:

This is still happening in jQuery 1.5

 How to report bugs

comment:11 Changed 3 years ago by katiegengler

The same problem exists in jQuery 1.5; the problem was already described sufficiently. It is the combination of Squid, FF3 and jQuery. As this bug was closed invalid by a bot for inactivity, that does not necessarily mean that it should never be fixed.

comment:12 Changed 13 months ago by anonymous

Same problem still exists

Please follow the  bug reporting guidlines and use  jsFiddle when providing test cases and demonstrations instead of pasting the code in the ticket.

View

Add a comment

Modify Ticket

Action
as closed
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.