繁体   English   中英

Objective C中的TCP / IP?

[英]TCP/IP in Objective C?

我只是想在目标C或C中模仿下面的PHP,

<?php
$host="192.168.1.4";
$port = 1000;
$message="Hi";

// open a client connection

$fp = fsockopen ($host, $port, $errno, $errstr);

if (!$fp){

$result = "Error: could not open socket connection";

}
else{

fputs ($fp, $message);

fputs ($fp, "END");

fclose ($fp);

}

?>

我在Objective C中实现了以下内容,但这并不是那么可靠和快速,只有第一条消息被传递,我需要重新连接第二个数据(我已经尝试了https://github.com/robbiehanson/CocoaAsyncSocket但反映了与下面的代码相同的结果)。 我需要打开数据 - >发送数据 - >关闭连接(需要立即无延迟)

NSString *ipaddress =[NSString stringWithFormat:@"192.168.1.4"];

        CFReadStreamRef readStream;
        CFWriteStreamRef writeStream;
        CFStreamCreatePairWithSocketToHost(NULL, (CFStringRef)ipaddress, 1000, &readStream, &writeStream);

        inputStream = (NSInputStream *)readStream;
        outputStream = (NSOutputStream *)writeStream;
        [inputStream setDelegate:self];
        [outputStream setDelegate:self];
        [inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
        [outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];

        [inputStream open];
        [outputStream open];

我强烈建议使用更高级别的网络通信框架。 我一直在为我的大多数项目使用CocoaAsyncSocket - 比直接使用iOS网络API更少的脑损伤。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM