2014-02-22 47 views
1

我使用pushergem來從外部API操作我的前端。它工作正常,沒有問題。是否可以在後端使用「推送」服務?

但我想知道的是,如果有可能在我的應用程序的後端使用推送通知?我花了很多時間調查這個,但找不到有用的東西。

讓我來總結一下:

我有一個應用程序,並且是緊密結合相互交融另一個API的應用程序。有時我想用我的API發送通知給我的主應用程序,我希望能夠在我的主應用程序的後端處理關於從API端收到的數據的數據。這些是像'行動已完成/開始/成功'等等......

據我所知,'推者'在前端通過JavaScript接收推送通知。但我相信在後端也必須有一種方法來使用這些通知。

如果有另一種方式(也許是Faye?Websocket)來做這件事,我很想知道它是什麼。任何線索將不勝感激。

這是可行的嗎?

謝謝

回答

2

推杆是backend system too( 「推」 更新頻道)


端點

我想你可能endpoints

從有興趣我可以收集什麼,似乎你正在尋找觸發數據傳輸到一個端點一旦在您的API中發生操作?例如:在 「API」 應用

  • 用戶註冊
  • API應用發送 「通知」 給主應用程序
  • 主要應用增加1

用戶計我可以看到這個工作是通過使用ajax或發送curl請求到您的主應用程序的端點(在路徑中設置),觸發操作:

#main_app/config/routes.rb 
post "endpoint", to: "application#endpoint" 

#main_app/controllers/application_controller.rb 
def endpoint 
    @count = Option.increment!(:user_count) 
end 

這將讓你操縱你的「主」的應用程序的後臺數據


API

棘手的,非傳統的零件來的時候你要送從你的API應用程序到你的主應用程序的數據(這是你從那裏得到「推動者」主意的地方)

我會親自看看發送一個標準的HTTP請求到主應用程序en dpoint,可能與捲曲(如果從後端):

您可能需要安裝curb(捲曲紅寶石)位置:https://github.com/taf2/curb

如果你想要,我可以寫一些代碼嗎?

+0

非常感謝您的回答豐富!你真的明白我想要收集什麼。但我不明白'推'邏輯有什麼意義,如果我只是從API發送GET或POST請求到我的主應用程序?我想我誤解了一些東西?不應該用於我提到的目的嗎?我可以使用'Typheous'向我的主應用程序發送HTTP請求? – scaryguy

+0

推送通知用於雙向通信(您必須*訂閱*才能接收更新)。沒有辦法「訂閱」Rails應用程序到另一個應用程序的更新 - 您必須發起某種HTTP請求。我只是推薦CURL(因爲這是我有過的唯一經驗)。如果你想使用'Typheous',這完全取決於你! –

+0

那麼我們可以這樣總結一下嗎?「 」爲了從API發送通知到應用程序,最好/最方便的方法是從API嚮應用程序發送常規HTTP請求「 那麼Websocket的用例是什麼呢?如何獲得API和應用程序之間的全雙工通信? :\ – scaryguy

相關問題