IOS smallSocket и python

#python #ios #sockets

#python #iOS #сокеты

Вопрос:

Я работаю над приложением для IOS. Я начинаю с сервера Python на Mac, который должен подключаться к iphone и печатать данные, отправленные с iphone. соединение, кажется, установлено, но python выводит бесконечную букву «b» » в качестве данных… Я не знаю почему.

странно то, что это происходит также с cocoaAsynchronousSocket

это сервер

 #!/usr/bin/python
import time
import socket
import sys

addr = sys.argv[1]
port = 4444

if not addr :
    print ("No host address specified, plese specify an address", files=sys.stderr)

sock = socket.socket (socket.AF_INET, socket.SOCK_STREAM)

print ("connecting...")
try:
    sock.connect ((addr, port))
except socket.error: 
    print ("unable to connect to", addr)
    sys.exit(0)
print ("Connected to", addr)
while 1:
    data = sock.recv(0)
    data2 = sock.recv(1)
  #  if not data: break
    print (data)        
    print (data2)
  

и это некоторый код, который я использую для создания соединения

 - (IBAction)openPressed:(id)sender {


    socket = [Socket socket];
    [socket listenOnPort:4444]; 
    [socket acceptConnection];
    [socket writeString:@"connection accepted"];
    }
  

Ответ №1:

Почему вы добавили эту строку:

данные = sock.recv(0)

Кроме того, ваш сервер, хотя имя client может быть более подходящим, кажется хорошим.

Если он не выводит то, что вы ожидаете, я предлагаю вам использовать некоторые инструменты сниффера, такие как wireshark, чтобы проверить, что он действительно получает.