如何将客户端上的Python套接字连接到Node.js/socket.io?
我想通过套接字将Blender(v2.55)连接到网页。如何将客户端上的Python套接字连接到Node.js/socket.io?
对于Web部件,我可以使用Node.js & socket.io。我已经使用了一点node.js/socket.io,这不是我想的问题。
现在为Blender,它运行在Python 3.1,所以我已经插座,如果需要,我可以添加库。我是Python套接字的新手,可以直接将客户端连接到node.js/socket.io吗?
我试图从Python文档的基本代码:
import socket
import sys
HOST, PORT = "127.0.0.1", 8080
data = "Hello from Blender"
# Create a socket (SOCK_STREAM means a TCP socket)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# Connect to server and send data
sock.connect((HOST, PORT))
sock.send(bytes(data + "\n","utf8"))
# Receive data from the server and shut down
received = sock.recv(1024)
sock.close()
print("Sent: %s" % data)
print("Received: %s" % received)
它的结果是:
Sent: Hello from Blender Received: b''
看来,搅拌机连接,但不接收数据。此外节点显示没有新的客户端连接...
我还需要别的吗?如果有人能帮助我...
你缺少协议/握手。你有什么是一个纯粹的TCP套接字连接。 node.js/socket.io位于TCP套接字之上。基本上,当你打开一个连接到一个socket.io服务器,它期望你使用一些协议进行通信(websockets,longpolling,htmlfile等等)。初始握手定义了协议的内容。 Websockets是支持的协议之一。 This blog post应该可以帮到你。它看起来并不容易实现websocket。
现在似乎还有一个Python Websocket客户端库。我没有使用它 - https://github.com/mtah/python-websocket – 2010-11-04 00:46:45
我想要的python-websocket,但我有另一个问题,我在这里发布它:http://*.com/questions/ 4101621 /蟒-3-1-错误而-加入-A-库功能于混合器 – 2010-11-04 21:35:03
您可以使用telnet或netcat连接到“127.0.0.1”,8080(如telnet 127.0.0.1 8080)并通过telnet发送/接收数据吗?你的python脚本看起来不错。 – seriyPS 2010-11-03 11:21:06
它已连接,但没有在Node端的通知...我以前使用此代码与Python套接字服务器,它工作得很好... – 2010-11-03 11:41:50
好吧,所以似乎我必须看看UDP套接字,为Python和节点.js ... – 2010-11-03 13:42:19