Skip to content

Latest commit

 

History

History
 
 

week12

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

作業

hw1:增強版 JavaScript 留言板

之前在 BE101 的最後,有做了一個留言板的 API,並且自己利用前端 JS 去串接,有顯示留言跟新增留言這兩個功能,如果你忘記的話可以回去複習一下。

這一週呢,你要負責來增強這個專案,請加上以下功能:

  1. 分頁功能(要能夠顯示現在在哪一頁、切換到其他分頁等等,一頁顯示 5 個留言就好,這樣比較好測)
  2. 由帳號機制改成以前那種可以自己輸入暱稱的方式留言(所以沒辦法與原本留言板的資料庫共用,要新開一個)

介面的部分請使用 Bootstrap,JS 的部分也請盡量用 jQuery,版面隨自己喜好設置就可以了。

總結一下,這個作業有兩個東西要做:

  1. 自己實作出留言板 API,要能夠新增留言以及顯示留言
  2. 串接自己做出來的 API

hw2:打造短網址服務

短網址服務的原理其實很簡單,那就是背後有一個 table 紀錄了短網址跟長網址的關聯,當使用者造訪短網址的時候,就把使用者用 302 redirect 導到長網址去即可。

因此呢,請你做一個簡易短網址的 API,檔案名稱會是:

  1. create_url.php(處理縮網址的需求)

除此之外,你還需要兩個 PHP 檔:

  1. r.php (把短網址導到長網址)
  2. index.php(提供縮網址功能)

r.php 的功能很簡單,就是接收短網址然後導到原本的網址去。

例如說 r.php?id=abc123,可能就會連到 google.com 去之類的。

至於 create_url.php 則是負責縮網址的部分。

可以用 POST 的方式把要縮的網址傳到 create_url.php 去,而且可以接收一個參數叫做「custom_url」,如果有這個參數,代表使用者想要自訂短網址。

例如說把 google.com 帶到 create_url.php,可能會產生一個短網址是:http://example.com/r.php?id=abc123

但如果我把 google.com 以及 custom_url=g 一起傳給 server,產生的短網址就會是:http://example.com/r.php?id=g

介面的部分請使用 Bootstrap,JS 的部分也請盡量用 jQuery,前端版面的部分請自己設計。

總結一下,這個作業你會做出一個 index.php,畫面上會有兩個輸入框,一個讓使用者輸入長網址,一個輸入自訂短網址,還有一個按鈕叫做「產生短網址」。

當按鈕按下去以後,前端會用 ajax 去呼叫後端的 create_url.php,然後拿到一個縮好的網址,格式一定會是:http://example.com/r.php?id=xxx

接著使用者點了這個網址以後,就會透過 r.php 幫忙把後面帶的短網址轉換為原本的網址,並且導到原本的網址去,屬於你的縮網址服務就這樣完成了。

hw3:簡答題

  1. 請簡單解釋什麼是 Single Page Application
  2. SPA 的優缺點為何
  3. 這週這種後端負責提供只輸出資料的 API,前端一律都用 Ajax 串接的寫法,跟之前透過 PHP 直接輸出內容的留言板有什麼不同?

請將答案寫在 hw3.md