作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
<分区>
我正在使用 Objective-C 编写一个简单的 Redis 客户端应用程序。为了与我的服务器上的 Redis 通信,我需要通过 SSH 连接到服务器,然后打开一个 TCP 套接字来来回发送数据。我正在尝试关注 example from libssh2.org, direct_tcpip.c
我已经让它运作良好。我可以运行代码,它会说:
Waiting for TCP connection on... 0.0.0.0:6379
然后我尝试使用 telnet 与它通信:
telnet 0.0.0.0 6379
我可以通过这种方式成功地与 Redis 连接和交互,是的!
现在下一步是让我能够以编程方式与服务器对话并从我的应用程序的 UI 向它发送命令,但是当我调用 accept()
时程序被阻止并且是一直在等待连接进入。这是个问题,因为我需要以编程方式连接到它,但我似乎不知道该怎么做。
我尝试在 accept()
之前调用 libssh2_session_set_blocking(session, 0);
,但这似乎没有任何改变。
我的目标是设置转发,以便我的应用程序可以尽可能轻松地与远程 Redis 服务器通信,而且我对套接字编程完全陌生。我需要 SSH 隧道,因为 Redis 没有内置安全性,建议您在内部与它通信。
感谢任何能为我指明正确方向的人!
我是一名优秀的程序员,十分优秀!