iPhone AsyncSocket всегда подключается к любому порту!

StackOverflow https://stackoverflow.com/questions/2315713

  •  22-09-2019
  •  | 
  •  

Вопрос

Я использую (или пытаюсь...) AsyncSocket для подключения к серверу, но он всегда подключается, даже если сервер не работает...Я использую SDK 3.1.2.Кто-нибудь сталкивался с этой проблемой раньше?

#import "mluPresenterAppDelegate.h"
#import "AsyncSocket.h"

@implementation mluPresenterAppDelegate

@synthesize window;


#pragma mark -
#pragma mark Application lifecycle

- (void)applicationDidFinishLaunching:(UIApplication *)application {    
    AsyncSocket *assClient = [[AsyncSocket alloc] initWithDelegate:self];
    NSError *err = nil;
    if (![assClient connectToHost:@"127.0.0.1" onPort:7777 error:&err]) {
        NSLog(@"%@ %@", [err code], [err localizedDescription]);
    } else {
        NSLog(@"Conectou!");
    }
    [window makeKeyAndVisible];
}

Результат всегда 2010-02-22 22:54:26.922 mluPresenter[2083:207] Подключитесь! даже если я изменю порт на 1 или на порт вне диапазона...

Заранее спасибо.

Это было полезно?

Решение

Насколько я помню, он на самом деле не подключен, когда -connectToHost:onPort:error: возвращается, это просто успешная попытка.Метод делегата информирует вас об успешном или неудачном соединении.

Другие советы

При успешном подключении к данному хосту и порту делегат DidConnectToHost:port должен вызвать fire.connectToHost:onPort:error:вернуть просто индикатор, можно ли примерить сокет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top