我现在正在进行一个项目,将修复消息传输到服务器并获得响应。问题是我认为我成功地发送了一个测试请求,但是没有得到响应。另外,在服务器端,那个家伙告诉我,我发的信息一团糟。在
以下是我的代码,希望有人能帮我摆脱困境。提前谢谢。由于这只是一个测试,因此消息是硬编码的。在
import socket
from time import sleep
import sys
SOH = chr(1)
def checksum(str):
res = 0
for i in xrange(len(str)):
res += ord(str[i])
return res % 256
def client():
bodylength = len('35=1' + SOH + '49=IDMYSIDE' + SOH + '56=IDSERVER' + SOH + '34=1' + SOH + '52=20170425-12:50:32' + SOH + '112=123' + SOH)
packet = '8=FIX.4.2' + SOH + '9=' + str(bodylength) + SOH + '35=1' + SOH + '49=IDMYSIDE' + SOH + '56=IDSERVER' + SOH + '34=1' + SOH + '52=20170425-12:50:32' + SOH + '112=123' + SOH
sums = str(checksum(packet))
sums = '0'*(3-len(sums)) + sums
packet = packet + '10=' + sums + SOH
print packet
HOST, PORT = 'xx.xx.xx.x', 1000
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((HOST, PORT))
bytessend = sock.sendall(packet)
print bytessend
# I reveive nothig here
sleep(3)
reply = sock.recv(2560)
print "recvd: ", reply
client()
目前没有回答
相关问题 更多 >
编程相关推荐