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
主要現象:
服務器1返回正常數據。服務器2返回正常數據。
但是,如果機器1用機器2的代碼,或者服務器2用服務器1的代碼,那么返回:TSocket read 0 bytes
我的問題:
為什么相同的代碼在兩臺配置相同的機器會出現不同的結果(一個正常一個不正常)?服務器相關配置:服務器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安裝。具體內容:sqlalchemy==1.0.12MySQL-Python==1.2.5thrift==0.10.0
順便附上我的一篇博客內容:thrift中的一些坑。原來并不是版本問題。
問題解答
回答1:是因為客戶端發過去的字符不一樣導致的吧
相關文章:
1. 網頁爬蟲 - python爬蟲翻頁問題,請問各位大神我這段代碼怎樣翻頁,還有價格要登陸后才能看到,應該怎么解決2. python如何不改動文件的情況下修改文件的 修改日期3. python 正則表達式提取4. 算法 - python 給定一個正整數a和一個包含任意個正整數的 列表 b,求所有<=a 的加法組合5. javascript - 微信h5發送圖文信息,部分設備點擊“發送”按鈕時沒反應,問題較難重現,如何能找到可能存在問題的點?6. javascript - 微信小程序里怎么把頁面轉成圖片分享7. 大家好,請問在python腳本中怎么用virtualenv激活指定的環境?8. python - 求一個在def中可以實現調用本def滿足特定條件continue效果的方法(標題說不太清楚,請見題內描述)9. javascript - JS用ajax爬取百度外賣店家信息10. python - Pycharm調試代碼進行列表遍歷時,如何直接賦值指定元素
