在我说什么之前,如果您对标题感到困惑,那就是说我使用了这段代码:cmd, addr = sock.accept()
我怎么能将这段代码用于客户看到 raw_input,这是我的代码:
from socket import *
sock = socket(AF_INET, SOCK_STREAM)
HOST = "0.0.0.0"
PORT = 8080
sock.bind((HOST, PORT))
sock.listen(5)
while True:
cmd, addr = sock.accept()
cmd.send ('Welcome to server.py\r\n')
main = raw_input("> ")
这是我的输出:
-bash-4.1# python server.py
>
我希望当他们连接时它在客户端,但它在服务器端
最佳答案
[将我的评论转化为答案]
这里有两个应用程序(可能在两台不同的机器上)。一个应用程序打开一个服务器套接字并监听连接。在来自另一个进程(客户端)的连接上,它发送字符串 Welcome to server ...
。
第二个应用程序创建一个客户端套接字并连接到服务器。一旦建立连接,两个进程就可以使用这样的字符串交谈(这有点不准确,但对于这个答案来说没问题)。然后,这两个进程的工作就是使用从对方收到的任何信息相互协调。
i want that to be on the client side when they connect that's there but its on the server side
Thing is its coming up on the server side
您需要做的是更改您的客户端进程(可以连接到服务器的进程)——不是您发布的脚本——另一个进程,有 raw_input(..)
。
关于python - 如何在套接字中使用 raw_input,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38063042/