3 ms·
No, it is setting limitations, they're just harder to understand and predict. Here's what the RFC says: qvalue = ( "0" [ "." 0*3DIGIT ] )
by duckerude 6y ago
No, it is setting limitations, they're just harder to understand and predict. Here's what the RFC says:
qvalue = ( "0" [ "." 0*3DIGIT ] )
| ( "1" [ "." 0*3("0") ] )
(https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.9 https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3....)
There are 1001 valid values with 1117 representations. Only in practice, Firefox clamps to 2 decimal places, and it used to clamp to 1 decimal place (https://bugzilla.mozilla.org/show_bug.cgi?id=672448 https://bugzilla.mozilla.org/show_bug.cgi?id=672448), and who knows what other software does.
And it gets worse: the grandparent suggests there are servers that parse it as floating point. Do they accept q=1e2? If they accept it, are there clients that send it? Do you need to be compatible with those clients?