2016-08-19 89 views
0

我已經有一段時間後端有問題了,現在Express JS使它變得特別困難。不過,我覺得我的錯,因爲我一直在用,這是一個MVC框架發電機或者也許是一個框架,與認證幫助的方法去。但是如果我是正確的,Express JS應該反映一切的RESTful API。不僅僅是用戶註冊(POST)和登錄(GET)。我應該爲這個簡單的事件使用一個API(Express JS)

這是我需要澄清的地方。從現在起,在與數據庫交互時總是使用RESTful API是最佳實踐嗎?我有一個真正的問題是用戶表和喜歡表。

如果用戶點擊一個像照片按鈕,我想要做的事,如:

INSERT INTO喜歡(USER_ID,PHOTO_URL)VALUES(CURRENT_USER,URL);

什麼會的方式來做到這一點?我如何告訴像按鈕來引用API?這不像一個註冊表格,我們給他們的名字。或者我只是進入Express文件並開始定義路線?

+0

如果您製作的是RESTful API,那麼您將需要路由。這就是你如何處理你的REST API調用。然後,您可以通過表單提交或AJAX發送電話。 –

+0

你喜歡的按鈕可以進行Ajax調用。該Ajax調用必須具有與它一起發送的適當參數,或者cookie中的Cookie或會話通過ajax調用自動發送,必須已經包含必要的信息(例如用戶),然後在Express服務器上創建一個路由每個你想支持的Ajax調用。 – jfriend00

+0

男人,我太蠢了!你是對的。在這種情況下,我無法相信我忘了AJAX。非常感謝你!這回答了一切。 – dsomel21

回答

0

是的,您可以爲您希望客戶端能夠使每個AJAX調用快車路線。

這裏的事件對照片的Like按鈕的一般順序:在

  1. 用戶登錄,在識別用戶的cookie創建某種狀態(可以是ID或更可能是服務器端會話)。

  2. 用戶按一下照片上的按鈕。

  3. 將Javascript附加到瀏覽器中的Like按鈕,獲取當前照片ID並使用當前照片ID作爲Ajax調用的參數調用「likePhoto」的Ajax調用。

  4. Ajax調用打之前已成立處理這個Ajax調用的快速途徑。

  5. 如果有與該請求相關聯的用戶會話沒有登錄,則該請求被拒絕可能(可能返回與未經授權的相關的一些錯誤代碼)。

  6. Express路由使用cookie來識別發出請求的用戶,以便它現在具有照片ID和用戶,因此它可以使數據庫調用將Like添加到數據庫。

  7. 數據庫操作完成後,Ajax調用可以返回200個狀態和任何的反應是適當的。

相關問題