HTTP 响应无法识别的文本
HTTP response unrecognized text
我有一个 lotus notes java 代理,我在其中收到一个 XML,解析它并发回一个包含 XML 作为内容的响应:
pw.println("Content-Type: text/xml");
pw.println("charset: UTF-8");
pw.print("\r\n");
pw.println("<cXML payloadID=\"" + payload + "\" xml:lang=\"en\"" + " timestamp=\"" + timestamp + "\" >" + "<Response><Status code=\"200\" text=\"OK\" /></Response></cXML>" );
我检查了响应内容的样子,我看到了这个:
<cXML payloadID="1449750433..595@" xml:lang="en" timestamp="2015-12-10T12:27:13"><Response><Status code="200" text="OK"/></Response></cXML>
但是如果我检查 wireshark 然后我看到这个:
为什么我收到这个无法识别的文本。
而 B 接收我的响应的主机是一个 .net 应用程序,这个 .net 应用程序收到此错误:
任何可以帮助我的人。
谢谢
将代码更改为:
pw.println("Content-Type: text/xml; charset=utf-8\r\n");
pw.println("<cXML payloadID=\"" + payload + "\" xml:lang=\"en\"" + " timestamp=\"" + timestamp + "\" >" + "<Response><Status code=\"200\" text=\"OK\" /></Response></cXML>" );
HTTP headers 需要 CR+LF (Windows-style) 行结尾。尝试手动输入行尾,例如:
pw.print("Content-Type: text/xml\r\n");
然后用空行标记header的结尾:
pw.print("\r\n");
我有一个 lotus notes java 代理,我在其中收到一个 XML,解析它并发回一个包含 XML 作为内容的响应:
pw.println("Content-Type: text/xml");
pw.println("charset: UTF-8");
pw.print("\r\n");
pw.println("<cXML payloadID=\"" + payload + "\" xml:lang=\"en\"" + " timestamp=\"" + timestamp + "\" >" + "<Response><Status code=\"200\" text=\"OK\" /></Response></cXML>" );
我检查了响应内容的样子,我看到了这个:
<cXML payloadID="1449750433..595@" xml:lang="en" timestamp="2015-12-10T12:27:13"><Response><Status code="200" text="OK"/></Response></cXML>
但是如果我检查 wireshark 然后我看到这个:
为什么我收到这个无法识别的文本。
而 B 接收我的响应的主机是一个 .net 应用程序,这个 .net 应用程序收到此错误:
任何可以帮助我的人。
谢谢
将代码更改为:
pw.println("Content-Type: text/xml; charset=utf-8\r\n");
pw.println("<cXML payloadID=\"" + payload + "\" xml:lang=\"en\"" + " timestamp=\"" + timestamp + "\" >" + "<Response><Status code=\"200\" text=\"OK\" /></Response></cXML>" );
HTTP headers 需要 CR+LF (Windows-style) 行结尾。尝试手动输入行尾,例如:
pw.print("Content-Type: text/xml\r\n");
然后用空行标记header的结尾:
pw.print("\r\n");