1 回答

TA貢獻(xiàn)1891條經(jīng)驗(yàn) 獲得超3個(gè)贊
您的通信“協(xié)議”(一行是一條消息,不完全是協(xié)議)顯然無法處理二進(jìn)制數(shù)據(jù)。如果您想在協(xié)議中發(fā)送文本數(shù)據(jù),您可以將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為文本,例如使用 Base64 編碼。您還需要一些語義來指示某些文本是從二進(jìn)制轉(zhuǎn)換而來的。
或者您可以更改協(xié)議以本地處理二進(jìn)制數(shù)據(jù)。您可以在后面添加二進(jìn)制數(shù)據(jù)的長(zhǎng)度,這樣您就知道必須以二進(jìn)制形式讀取該數(shù)據(jù),而不是將換行符解釋為消息的結(jié)尾。
有許多協(xié)議在這方面做得很好,也許您不需要想出您的自定義協(xié)議。如果你想發(fā)送短信,HTTP 使用起來非常簡(jiǎn)單,你可以將數(shù)據(jù)格式化為 JSON,使用 Base64 將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為文本:
{
"command": "string",
"args": [
"binaryDataAsBase64"
]
}
- 1 回答
- 0 關(guān)注
- 152 瀏覽
添加回答
舉報(bào)