【问题标题】:How does the "plumbing" of real-time (node/socket.io) work?实时(node/socket.io)的“管道”如何工作?
【发布时间】:2014-11-19 01:22:10
【问题描述】:

我目前正在构建一个使用 MEAN 堆栈(Mongo、Express、Angular、Node)的实时 Web 应用程序。我的问题与 Node(更具体地说是 Socket.io)如何在调用 API(在本例中为 Instagram)的实时应用程序中工作有关。

我正在使用 Instagram API 订阅多个位置(纬度/经度坐标)。我希望我的网络应用在这些位置周围拍摄(和地理标记)照片时自动添加照片。

我认为这将如何工作:

  • 通过 Instagram API 订阅多个位置
  • 当 API 端点的数据发生变化时,Instagram 会向我的回调 URL 发送一个 GET 请求
  • 根据更改的端点向 Instagram 发出 GET 请求作为响应
  • 使用我自己的 API 将新照片保存到 Mongo 数据库
  • 使用 Socket.io 从服务器向客户端发送包含新照片数据的事件
  • 在客户端使用 Socket.io 侦听器“捕获”此事件并显示新照片

这在详细的层面上是否合理,还是我遗漏了(甚至是一些微小的)步骤?

【问题讨论】:

    标签: node.js mongodb socket.io real-time instagram


    【解决方案1】:
    1. 使用 Socket.io 从服务器向客户端发送事件
    2. 使用客户端的 Socket.io 侦听器“捕获”此事件
    3. 向我的 API 发出 GET 请求以从 Mongo 数据库中提取新照片

    这可以简化为一个步骤:

    1. 从服务器发出事件并将照片作为 data-uri 发送。

    您可能需要注意可以通过套接字发送的数据量。

    【讨论】:

    • 我有数据库步骤,因为我想从我的数据库中提取照片流。基本上我希望用户能够继续向下滚动以查看旧照片。就“数据量”而言,好消息是我只是(通过套接字)发送和保存对 Instagram 上照片位置的引用。我没有保存或发送实际图像。
    猜你喜欢
    • 1970-01-01
    • 2017-07-13
    • 1970-01-01
    • 1970-01-01
    • 2012-12-25
    • 1970-01-01
    • 1970-01-01
    • 2014-09-08
    • 1970-01-01
    相关资源
    最近更新 更多