iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 4
1

承上篇 來源

Server-side 能做哪些事

為每位 user 有效率地傳遞他們所需的資料 , 進一步創造更好的 UX 。
例如:

  • Amazon 建立搜尋商品結構;經由不同 user 前次交易紀錄,得出客製化的商品推薦、簡化個人交易程序。
  • 銀行儲存帳戶資料及瀏覽、交易權限設定。
  • 其他像是 Facebook, Twitter, Instagram, 維基百科做內容編輯、分享、偏好設定篩選

常見的功能

有效率的儲存及傳遞資訊

想像一下: Amazon 販售多少的產品? FB上有多少篇 po 文?
為了每個產品、 每篇 po 文建置一張張靜態網頁,這個做法完全不切實際。

Server-side 可以做到動態產出 HTML 及其他類型的檔案,
這可能只是簡單的傳遞資料(JSON, XML, etc)給 client-side frameworks(這樣可以減少 server 的負擔)

不僅可以傳遞資料,甚至可以回傳軟體產出的結果,
如通訊軟體的資料。這些資料內容會轉化成 user 裝置上能接收的形式。
資料在 db 上可以更容易被商用系統分享、更新(假設商品在實體及線上皆有販售,商家可以更新庫存量)

量身打造的 UX

儲存 client 的資料和習慣。 像是:

  • 網站會儲存信用卡資訊,下次刷卡就不必重填資料。
  • Google maps 運用 user 儲存的地點或當前地點,提供前往路徑。
  • 深層分析 user 習慣,可以推測 user 可能有興趣的活動 ... 等等與 user 有關的資訊。

控制存取的內容

限制存取權限,授權給 user 能夠瀏覽特定資訊。
實例:

  • FB可以發布只限朋友觀看的文章,可以決定誰的文章要顯示在主頁上 -- 授權行為是 UX 的核心之一
  • 點擊現在頁面上方編輯鈕,登入後才能編輯,未登入會被導向註冊畫面

資訊暫存

運用 session -- 一個儲存目前使用者資訊的機制,且根據不同資訊個別做出回應。
這可以做到 User 之前已登入過,列出歷史記錄或是連到信箱收件夾;
或是記下遊戲登出時的地方,下次登入在同個地點

新聞網站的訂閱機制: 連續幾小時或幾天使用該網站,最後被導向「如何訂閱」的頁面且不能再讀其他新聞,這解釋了 session 被存在 cookies 裡。

跳通知 & 通訊機制

廣發或只給特定對象信件、短訊、立即訊息、語音訊息... ,提供通訊服務。例如:

  • 社群網站用信件、短訊跳通知
  • 商家寄發推薦商品信,那些商品可能與你購買過的商品相似,或瀏覽過、可能有興趣
  • Server 記憶體被大量佔用或是網站被異常使用時,管理者收到警告訊息

最常見的通知是「註冊確認信函」,除了反覆確認,還有請 user 點擊啟動帳號

資料分析

運用 user 的搜尋記錄、購買紀錄、評論、停留頁面時間, server 可以用來調整給 user 的回饋。像是 Amazon(依據交易紀錄) & Google(搜尋紀錄) 的廣告

總結

我們了解 web server 扮演掌控呈現資訊內容的要角,並有效率傳遞每位獨立 user 客製化的資訊。
最後,我們了解 server-side code 可由數種程式語言撰寫,以及使用框架有助於處理這整件事。
後面的章節,我們將協助選擇對我們而言最適當的 framework

下一頁,會講述更多 client-server 互動的細節


上一篇
三日:伺服器端(server-side)的介紹(Static sites, Dynamic sites) , Server-side & client-side 不同之處
下一篇
五日: Client-Server 概覽( Web servers & HTTP 入門 , GET req/res 範例 )
系列文
還在想要買哪一堂線上課程嗎?培養看文件的習慣吧!用 MDN 文件學後端:NodeJS & MongooseDB30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言