我是通過Unity創建遊戲的,我希望將玩家的分數上傳到MongoDB。因此,我構建了一個監聽端口3000的node.js服務器,並將得分發送到服務器並存儲到數據庫中。適用於網絡和移動應用程序的node.js服務器
我的問題是,如果我想創建一個用於查看/分析玩家分數的網站,我應該使用哪種方法?
- 創建兩個Node.js的服務器,一個用於網絡,一個用於遊戲
- 一個Node.js的服務器,但偵聽端口80和3000(IM不知道是否有可能或沒有)
- 還有其他更好的建議嗎?
謝謝。
我是通過Unity創建遊戲的,我希望將玩家的分數上傳到MongoDB。因此,我構建了一個監聽端口3000的node.js服務器,並將得分發送到服務器並存儲到數據庫中。適用於網絡和移動應用程序的node.js服務器
我的問題是,如果我想創建一個用於查看/分析玩家分數的網站,我應該使用哪種方法?
謝謝。
我會創建一個節點服務器,一個服務於api和web請求。
聽起來像API提供的數據和網絡將是相同的或彼此的子集。所以你可能會想共享代碼,從數據庫中查找相同的東西等等等等。
從這裏,你可以創建api使用和web使用的單獨路徑(/api/v1/my_scores
vs /my_scores
)或者意識到您只是要求提供相同數據的不同表示,並執行REST風格,如checking the accept header,併發送服務器呈現的HTML或將JSON發送回客戶端。
或者,您可以在Node中創建api,然後使用純前端工具(如Angular或React)爲您的站點創建Web前端。
使用端口3000不是一個好主意,因爲許多用戶通過阻止非標準端口的防火牆訪問互聯網。
我會推薦使用443端口和https來確保兩種用例的通信安全。
如果用於分析評分的站點與api服務器不共享邏輯,則可以將其創建爲單獨的站點 - 但在啓動時更容易管理單個應用程序。
如果我很容易理解你的問題,並根據我有限的知識,我認爲你不需要多個服務器與數據庫。原因是一個網站你只想顯示高分,也沒有最終用戶可以在網站上插入任何東西。所以複雜度已經很小了,所以不要費心創建另一臺服務器。只是讓數據獲取API在網站中分開使用。