我们正在与专有搜索系统集成,并且已经注意到,当我们只期望看到XML时,系统发回的XML会被其他字符/数字结束(下面的例子示例)。我们可以解析这个问题,但它与意外的内容类型有关,这是意料之外的。
有人可以解释一下这可能是什么...这是与chucked编码有关还是我们错过了与某些标准HTTP编码行为相关的内容?
HTTP/1.1 200 OK
Server: nginx/1.4.6 (Ubuntu)
Date: Wed, 24 Dec 2014 10:10:23 GMT
Content-Type: application/xml;charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Vary: Accept-Encoding
99
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><blah>hello</blah>
0
注意99和0。
HTTP/1.1 200 OK
Server: nginx/1.4.6 (Ubuntu)
Date: Wed, 24 Dec 2014 10:01:52 GMT
Content-Type: application/xml;charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Vary: Accept-Encoding
a3
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><blah>world</blah>
0
请注意a3和0。
答案 0 :(得分:1)
这是由于分块传输编码造成的。初始序列是以十六进制表示的块中的字节数,数据传输以最终块长度0终止。