We have problems with the Accept-Charset headers that are sent to the zope server by some mobile phones:
'Accept-Charset':'ISO-8859-1, US-ASCII, UTF-8; Q=0.8'

These cause a 500 internal server error. (Error Value: invalid literal for float(): =0.8 )

I checked with the HTTP1.1 RFC26160 section 14.2 and the header seems valid, but in fact isn't:
there is a space between the semi-colon and the Q char (which shouldn't be there acoording to the spec).

So, in principle, this is not a zope server bug, but an inflexibility.

I think the server should be a bit more lenient.
a simple .strip() in the right place should do.

Could you guys fix this?



BTW, for completeness, I included a quick test program is included below (causes a 500 on my zope 2.6.0) :

#--------------------- program illustrating the behavior -----------
import httplib, urllib

def sendHTTP():

headers = {'Accept':
'application/vnd.wap.wmlc, application/vnd.wap.wmlscriptc, application/vnd.wap.wbxml, image/vnd.wap.wbmp, image/gif, application/*, text/html, application/xhtml+xml, application/vnd.wap.wml+xml, text/css',
'Accept-Charset':'ISO-8859-1, US-ASCII, UTF-8; Q=0.8'}#, ISO-10646-UCS-2; Q=0.6'
conn = httplib.HTTPConnection("")
conn.request("GET", "/mobile/wap/games/",headers=headers)
response = conn.getresponse()
print response.status, response.reason
data = response.read()
print data



Zope-Dev maillist - [EMAIL PROTECTED]
** No cross posts or HTML encoding! **
(Related lists - http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope )

Reply via email to