- From: Richard Barnes <rbarnes@mozilla.com>
- Date: Tue, 11 Feb 2014 09:24:43 -0500
- To: Jonas Sicking <jonas@sicking.cc>
- CC: "public-web-perf@w3.org" <public-web-perf@w3.org>
On 2/11/14, 3:50 AM, Jonas Sicking wrote: > On Mon, Feb 10, 2014 at 3:33 PM, Richard Barnes <rbarnes@mozilla.com> wrote: >> Hey all, >> >> I've been working on implementing Beacon in Firefox, and have had some >> internal discussion with folks about the proper type for the "data" >> parameter. >> >> tl;dr: Data needs to be nullable and/or optional to avoid weird behavior. >> >> The current ED has the following: >> >> partial interface Navigator { >> boolean sendBeacon(DOMString url, >> (ArrayBufferView or Blob or DOMString or FormData) data); >> }; >> >> That leads to behaviour that seems broken. Since "DOMString" is included in >> the list of allowed types, if the JS passes in null or undefined, it gets >> converted to the string "null" or "undefined". > > This is quite normal JS behavior, so I wouldn't call it "broken". "Broken" is maybe too strong. Meant more that it was unexepceted to me as a developer, based on the spec. But maybe that's just because I didn't properly understand the WebIDL :) > However I would expect authors to be surprised that you have to send a > body. Including all the data that the server cares about in the URL > seems like a quite normal thing to do so I think it's something that > we should allow. > > So I think we should make the argument nullable, let null mean "send > no data" (and thus no Content-Type header), and make the argument > optional and default to null. > >> So we've got two questions here: >> 1. How should sendBeacon behave when data is null? >> 2. How should sendBeacon behave when data is not provided? > > In both cases I think we should send no request body, but otherwise > use normal behavior. That sounds fine to me. >> If we're going to send an empty request, then we probably shouldn't use >> POST. > > Not having a request body for POST requests seems fully compliant with > http 1.1. So I don't think we need to make any special exceptions > here. I can live with that. I think it was Boris that told me he thought a POST with no body would be kind of weird, but I'll let him defend that position if he cares. --Richard > > / Jonas >
Received on Tuesday, 11 February 2014 14:25:07 UTC