iOS 9 - 在另一台计算机上的网络浏览器中打开资源,由平板电脑触发

标签 ios rest mobile cross-platform

如果您必须在另一台计算机上的网络浏览器中打开数据库中的资源,使用 Apple 平板电脑应用程序作为 Remote ,您将如何实现这样的功能?这基本上就是 WhatsApp Web 所做的,所以它在技术上应该是可行的。但是你会怎么做呢?

最佳答案

我假设您指的是应用程序修改服务器上的某些内容,然后浏览器自动更新以反射(reflect)这一情况。如果您指的是 iOS Remote 应用之类的东西,那么您可能必须使用其他方法(您可能无法通过浏览器执行此操作)。

要做到这一点,您必须有一个 iOS 应用程序和浏览器都连接到的服务器。当应用程序执行某些操作时,它会更新服务器,例如通过向 REST API 提交 HTTP 请求。服务器随后更新数据库。

现在您必须更新浏览器,有两种方法可以做到这一点。一种是通过定期轮询服务器,使用 AJAX 动态更新部分页面而不刷新整个页面。这可行,但开销很大,而且可能会耗尽笔记本电脑的电池。

更好,但设置起来稍微困难一些,替代方法是使用 WebSockets. WebSockets 允许服务器和客户端之间的双向通信,并且连接保持打开状态,直到一方关闭它(或者在很长一段时间后超时)。客户端可以像以前一样向服务器提交信息或从服务器拉取信息,但服务器也可以在客户端无需请求的情况下将信息推送给客户端。这通常是游戏、聊天客户端等几乎实时运行的方式。

设置它并不一定那么困难,但它是一个非常广泛、开放式的主题,超出了 iOS 开发的范围。除了 iOS 应用程序和 Web 客户端之外,您还需要一个能够使用套接字的后端。 Node.js 是一种流行的基于 JavaScript 的后端,适用于此类应用程序;还有许多其他人。您必须自己进行研究以确定适合您的内容。

关于iOS 9 - 在另一台计算机上的网络浏览器中打开资源,由平板电脑触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33398628/

相关文章:

ios - 关闭 modalviewwontroller 后 Viewwillappear 不会被调用

ios - iOS 上的条件编译

java - 通过 REST API : allocatedMB, allocatedVcores 和 runningContainers 的 Hadoop 指标始终为 -1

android - 测试平板电脑移动网络应用

ios - 如何在 AFNETWORKING 中为参数设置多个值

ios - Facebook iOS Swift SDK : Not getting callback

php - 将多个查询参数传递给 restful api 的最佳方法是什么?

java - 使用Netty(http客户端)限制HTTP持久连接每秒的事务数

java - J2ME(Java ME): StringItem Alignment

android - 如何从一个应用程序快速集成多个商家