iOS SDK:如何检查端口是否打开?

2023-12-08

我还没有找到任何关于如何检查端口是否打开的信息。我尝试使用 AsyncSocket 类来实现它,但它始终返回 TRUE,尽管我拒绝与服务器上该端口的所有连接。 此外,我尝试使用isConnectedAsyncSocket 的方法,但总是返回 FALSE。

到目前为止我的代码:

//Init socket
socket=[[AsyncSocket alloc] initWithDelegate:self];

//results on TRUE always!
NSLog(@"Ready");

NSError *err = nil;
if(![socket connectToHost:@"10.1.2.40" onPort:25 error:&err])
{
    NSLog(@"Error: %@", err);
}
else
{
    NSLog(@"Connected");
}
//addition - results in FALSE always!

if([socket isConnected])
{
    NSLog(@"yes, its connected");
}
else
{
    NSLog(@"not connected...");
}
[socket disconnect];

您需要使自己成为委托并处理 onSocket:willDisconnectWithError: 方法。连接完全是异步的,因此除非存在基本的系统问题(套接字被禁用、您传入了无效地址等),否则当套接字连接尝试在后台发生时,该调用将始终成功。

如果该尝试失败,将调用 onSocket:willDisconnectWithError: 委托方法,以便您知道连接尝试失败。

我不确定为什么,但 AsyncSocket 类认为 kCFStreamStatusError 流状态为“已连接”,所以我怀疑这就是它显示为已连接的原因。您可以在 AsyncSocket 的源代码中了解所有这些内容。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS SDK:如何检查端口是否打开? 的相关文章

随机推荐

  • IOC 与温莎城堡的 IValidationDictionary

    我是温莎城堡的新手 只是使用最新版本 我已经为我的存储库创建了一些工作正常的条目 但我有一个最终的依赖项要传递到我的控制器中 我创建了一个继承自 IValidationDictionary 的 ModelStateWrapper Model
  • 如何将图像嵌入 ASP.NET 生成的 Word 文件中

    我有一个很常见的问题 正如我在各个用户组中看到的那样 但找不到合适的答案 我想要做的是在我的网站中生成一个 ASP NET 页面 该页面可以选择导出为 Microsoft Word doc 格式 我用过的方法是这样的 Response Cl
  • 防止在自动生成的 GridView 列中进行 HTML 编码

    我有一个 GridView 绑定到我构建的 DataTable 表中的大多数列都包含超链接的原始 HTML 我希望该 HTML 在浏览器中呈现为链接 但 GridView 会自动对 HTML 进行编码 因此它呈现为标记 在不显式添加超链接或
  • 动态 NG 控制器名称

    我想根据我们加载的配置动态指定控制器 像这样的东西 div div
  • AttributeError:“DataFrame”对象没有 DataFrame 的属性“append”

    我正在尝试为我的垃圾邮件分类器创建一个 DataFrame 对象 它应该包含两列 消息 和 类 但是当我使用dataframe append函数将电子邮件作为 消息 添加到我的数据框中 并将文件夹名称作为 类 我收到此错误 Attribut
  • PDOStatement::execute() 返回 true 但数据未更新

    我不知道为什么 这个准备好的查询不起作用 以下php代码是正确的 没有任何警告或通知 但相应的数据没有更新 对于类似的更新 数据库会正确更新 但此表则不然
  • Android - Google Play 服务实时多人游戏 - 自动匹配和等候室错误

    我正在使用 google play 服务进行多人实时实现 目标是让 4 名玩家在一个房间里一起玩 但如果一次没有足够的玩家 游戏开始时应该只有 2 或 3 名玩家 最好有一个计时器 要求第一批玩家稍等一下 解决方案1 我使用 RoomCon
  • 发布asp.net core项目后iis立即关闭

    当我尝试在 IIS Express 下调试我的 ASP NET Core 项目后 IIS Express 立即关闭 我正在使用 Visual Studio 2015 更新 3 提前致谢 我的包很好 但为了完整起见 这里是project js
  • Worksheet_change 宏在 Excel 2007 中多次运行

    我有几个工作表 我正在其中使用宏进行一些计算 如果范围内的任何单元格发生更改 则应该运行此计算 下面是运行的代码 Private Sub Worksheet Change ByVal Target As Range Check if cha
  • UICollectionViewCell 随机隐藏

    我有一个 UIView 其中添加了一个UICollectionView充当横幅视图 看起来像轮播 这Viewcontroller其中UIView存在 是一部分pageviewcontroller 页面VC gt UIViewControll
  • jQuery Mobile 中触摸后悬停效果保持不变

    我正在使用 jQueryMobile 开发phonegap 中的应用程序 仅适用于移动设备 其中我有搜索图标 我想当用户触摸该图标时在该图标上提供悬停效果 我已经通过CSS实现了这一点 a href search html class cu
  • 在 Caliburn Micro 和 Castle Windsor 中处理 ViewModel

    我使用 Castle Windsor 作为 Caliburn Micro Silverlight 应用程序中的容器 我的 ViewModel 对象相当厚实 因为它们调用 WCF 服务和一堆其他东西 因此 当窗口关闭时 我想调用contain
  • 阻止文本环绕图像

    我正在摧毁我的思想 试图把这个造型做好 我有一个固定大小的图像 其右侧的文本高度无法预测 我希望文本的顶部与图像的顶部对齐 但不环绕它 我的标记是 img height 231px width 132px div Text div 我想找到
  • 如何检查用户是否登录以及如果未登录则重定向到登录屏幕

    我将登录屏幕嵌入到UINavigationController我的主页屏幕嵌入UITabBarController 我的登录页面是通过编程完成的TabBarController是使用创建的storyboards In AppDelegate
  • 在 R 中使用正则表达式提取文本

    我读取了包含以下数据的文本文件 并尝试将其转换为数据框 Id 1 ASIN 0827229534 title Patterns of Preaching A Sermon Sampler group Book salesrank 39658
  • 打印函数中“end”参数的作用是什么?

    例如 在下面的代码中 带有结尾的整数保持在同一行 但没有结尾则不会 num 5 for i in range 1 num 1 for j in range num i 1 1 print j end print The endPython
  • 无法在 Sikuli 中导入 PIL

    我想在 Sikuli 中导入 PIL 为此我添加了下面的代码 import sys sys path append C Python27 Lib site packages sys path append C Python27 Lib si
  • 如何在 MATLAB 中绘制具有 3 个符号变量的 3 个方程的非线性系统?

    我对 Matlab 没有太多经验 我知道你可以用两个变量绘制方程 如下所示 ezplot f1 hold on ezplot f2 hold off 你会如何绘制三个方程three符号变量 一个示例系统是 x 2 y 2 z 2 1 0 2
  • 使用 JavaScript 将光标放置在文本输入元素中的文本末尾

    在将焦点设置到元素后 通过 JavaScript 将光标放置在输入文本元素中的文本末尾的最佳方法 我认为是最简单的方法 是什么 有一个简单的方法可以让它工作most浏览器 this selectionStart this selection
  • iOS SDK:如何检查端口是否打开?

    我还没有找到任何关于如何检查端口是否打开的信息 我尝试使用 AsyncSocket 类来实现它 但它始终返回 TRUE 尽管我拒绝与服务器上该端口的所有连接 此外 我尝试使用isConnectedAsyncSocket 的方法 但总是返回