簡體   English   中英

Smack:消息觸發“格式不正確”異常

[英]Smack: Message triggering "not-well-formed" exception

我正在嘗試通過 Smack 將具有以下格式的字符串作為消息發送:

<STX>1<US>fileID<US>fileName<US>fileSize<US>senderID<US>stringEncodedByteArray<ETX>

我正在生成這樣的參數:

String stringEncodedByteArray = Base64.getEncoder().encodeToString(bytes);
String fileID = java.util.UUID.randomUUID().toString();
String STX = Character.toString((char) 2);
String ETX = Character.toString((char) 3);
String US = Character.toString((char) 31);
String fileName = "file1";
String fileSize = "1000";
String senderID = "user1";

現在,當我嘗試發送此消息時,收到以下錯誤:

org.jivesoftware.smack.AbstractXMPPConnection callConnectionClosedOnErrorListener WARNING: Connection XMPPTCPConnection[hemodd2@192.168.123.242/88381984845654635827858] (0) 關閉,錯誤 org.jives.這個流錯誤在http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions not well-formed (invalid token)

似乎消息格式與 Smack 的內部工作方式發生沖突,因為我可以毫無問題地發送諸如“Hello World”之類的正常消息。 我知道我需要重新格式化消息,但我不知道應該如何處理。 我已經閱讀了錯誤描述中的鏈接頁面,但仍然不明白確切的問題。 任何幫助表示贊賞。

這不是 Smack 告訴您消息格式不正確,而是 XMPP 服務器。 這可能是由於使用了 XML 1.0 中不允許的 ASCII 控制字符造成的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM