python - thrift 返回 TSocket read 0 bytes 求助!!!!
問題描述
關鍵代碼(服務器1 start_server.py):
# Server 端對中文字段處理 if isinstance(value, unicode): value = value.encode('utf8') setattr(tobj, k, value)
關鍵代碼(服務器2 start_server.py):
# Server 端對中文字段處理 if isinstance(value, unicode): pass setattr(tobj, k, value)
這樣看可能更清楚:
client主要代碼:
client.get_user(1)
操作:python start_server.py
python client.py
主要現(xiàn)象:
服務器1返回正常數(shù)據(jù)。服務器2返回正常數(shù)據(jù)。
但是,如果機器1用機器2的代碼,或者服務器2用服務器1的代碼,那么返回:TSocket read 0 bytes
我的問題:
為什么相同的代碼在兩臺配置相同的機器會出現(xiàn)不同的結果(一個正常一個不正常)?服務器相關配置:服務器1:Ubuntu 14.04.5 LTSPython 2.7.6Apache Thrift 版本 Thrift version 0.10.0
服務器2:Ubuntu 14.04.2 LTSPython 2.7.6Apache Thrift version 0.10.0
其它依賴均從requirements.txt安裝。具體內(nèi)容:sqlalchemy==1.0.12MySQL-Python==1.2.5thrift==0.10.0
順便附上我的一篇博客內(nèi)容:thrift中的一些坑。原來并不是版本問題。
問題解答
回答1:是因為客戶端發(fā)過去的字符不一樣導致的吧
相關文章:
1. docker綁定了nginx端口 外部訪問不到2. dockerfile - 為什么docker容器啟動不了?3. git - webstorm窗口中左側列表的文件名顏色怎么修改4. javascript - 深夜被問題困擾求解惑,rn的API之PermissionsAndroidd的問題5. javascript - 最近用echarts做統(tǒng)計圖時遇到兩個問題!!6. android權限被第三方安全軟件禁止,如何獲取該權限狀態(tài)7. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?8. mysql - 我的myeclipse一直連顯示數(shù)據(jù)庫連接失敗,不知道為什么9. tp 6.0 數(shù)據(jù)查詢,求教!10. mysqld無法關閉

網(wǎng)公網(wǎng)安備