2017-07-14 50 views
-2

我最近发现了关于websocket,这似乎是让客户端(我的例子中的iOS应用)实时接收新数据的最佳选择。使用没有Node.js的iOS应用程序的websocket?

我是一个相对较新的Swift开发人员,所以我对websocket,Node.js或JavaScript一无所知,这三件事在使用Socket.IO时似乎很重要。

看到绝对有ZERO资源在线用于JavaScript-noobs(像我自己)那样令人沮丧。我找到的所有教程仅演示了如何在Node.js中的某种本地主机服务器中设置聊天室。

最接近我正在寻找的教程是this Appcoda tutorial,但即使是那个只演示如何使您的客户端与另一个本地主机服务器通信。

有人可以向我解释如何在实际服务器上配置Web套接字(与用于检索和存储PHP数据的服务器相同),还是这不可能?

一些更好的资源如何建立一个实际的服务器 - 客户端连接也是受欢迎的,而不是这些模糊的localhost演示。

+0

读好,他是在谈论斯威夫特... – Fabien

+0

这是一个有点难以跟随你的要求。如果你想在服务器上有传入的webSocket连接,你可以选择一个服务器端的开发环境(PHP,nodejs,Java,无论你喜欢什么),然后找到一个在该环境中工作的webSocket服务器库。然后,您可以按照该库的开发者指示来了解如何设置传入的webSocket服务器。 webSocket是一个标准协议。您可以将webSocket客户端连接到任何支持标准webSocket协议的服务器端平台。没有关于webSockets的特定的node.js。 – jfriend00

+0

@ jfriend00这就是我的设想,这就是为什么我很惊讶地发现每个单独的网络套接字教程都有20多段关于如何设置Node.js的段落。我问的是如何在服务器端设置网络套接字。就我而言,我习惯于在PHP中编写服务器端代码(尽管我不是原生的PHP程序员),所以理想情况下我正在寻找一种方法来在我的服务器上配置一个Web套接字。我还发现,在客户端,你应该建立一个URL(包括一个端口号)的连接,所以我很想搞清楚如何获得这样的工作URL。 –

回答

1

首先,看一个适当的WebSocket客户端斯威夫特:

https://github.com/daltoniam/Starscream

https://github.com/tidwall/SwiftWebSocket

然后,看看如何正确使用WebSockets满足您的需求。的NodeJS是不是赤裸裸的服务器,并有过的WebSockets或事件通过WebSockets的处理功能的解决方案:

https://deepstream.io/

http://socketcluster.io/

阅读这些解决方案,而不是平均初学者的互联网教程的文档和教程,像这样HTTP Authentification Tutorial

也看看上证所的事件,也许你会发现它们更具吸引力?一个实际的对比在这里:

http://streamdata.io/blog/push-sse-vs-websockets/

+0

SwiftWebSocket是否需要Node.js?我检查了文档,并在提供的示例代码中创建了一个'WebSocket'对象,并使用以'wss://'开头的URL进行初始化。如果我要使用这个API,我必须提供什么URL来初始化一个'WebSocket'对象?在所有上述的Web套接字客户端(Socket。例如IO和Starscream),web套接字对象被初始化为一个localhost的URL,它看起来像'http:// localhost:8000',它是用Node.js创建的,但是其中的'wss://'URL SwiftWebSocket参考? –

+0

Websockets是一种协议,它不需要NodeJS专门在后端工作。尽管如此,nodejs还是由一个大型的'npm'软件包提供支持。 – Fabien

相关问题