我知道这有几个主题,但我找不到我做错了什么。 这是错误的代码:
print 'Content-Type: text/xml \n'
print 'Content-Disposition:attachment;filename="test.qwc" \n'
print 'Content-Length:' + len(xml)
print xml
xml变量只是一个xml字符串。 xml很好,因为我可以将它打印到浏览器中。但是当我添加Content-Disposition和Content-Length行时,它会给我这个错误:
XML Parsing Error: not well-formed
Location: http:/myurl/XMLqwc.py?franchiseid=1
Line Number 1, Column 31:
Content-Disposition:attachment;filename="test.qwc"
------------------------------^
有什么想法吗? 在此先感谢您的帮助!
答案 0 :(得分:4)
"string" + len(whatever)
保证是例外。print
用于任何简单的文本格式。 HTTP不是那么简单(参见3),您应该使用sys.stdout.write()
代替。答案 1 :(得分:2)
标题和有效负载必须始终用空行分隔。内容长度标题行甚至不包含换行符...此外,向字符串添加整数(len()..)看起来很奇怪。