iT邦幫忙

2021 iThome 鐵人賽

DAY 17
0
自我挑戰組

程式導師實驗計畫第五期 回顧筆記系列 第 18

D17 第八週 前端基礎串 API

這禮拜的課程進度:

  • FE102 中場休息到結束

FE102 後半段筆記摘要

介紹網頁儲存資料的方式

  • cookie
  • localStorage
  • sessionStorage

這邊只是純粹介紹,還沒開始應用

網頁跟伺服器溝通的方式

  • form 表單
    在 ajax 出現之前只有這個方法
  • ajax XMLHttpRequest
    Web 2.0 變革很重要的推手之一,從此改變的網頁的生態
  • JSONP
    這是為了跳脫 CORS 問題的一種解法。算蠻有趣的技術,但課程沒有著墨太多,有興趣的人可以自己研究。

同源政策、跨域存取

這些問題我覺得蠻難講清楚的,就是 API 呼叫的時候瀏覽器會很龜毛地要你符合某一種規範。
但是在正常的情況下,按照 API 規格書上要求的格式去呼叫,通常就不會有問題了。

以一種不求甚解的角度來說,確實不需要理會太多,因為那是後端在煩惱的事情。

如果你求知欲很強或是想走後端的話,那這邊就會需要蠻注意的。
但是說真的,到目前我除了寫過 header('Access-Control-Allow-Origin: *'); 以外,我還真的沒有寫過什麼特別的設定。

可能要開發更安全的 API 時,後端才會需要用到更多的設定吧。但我目前學到這邊大概就這樣,給其他人參考。


作業

分別是串抽獎 API 和圖奇 API

一開始寫作業最常遇到的問題之一:瀏覽器跳 CORS 警告。通常這是因為 header 沒有帶上對應的參數。然後還要跟 DOM 的元素操作一起,一開始可能會手忙腳亂,就慢慢習慣這樣。另外目前的 API 呼叫是用 XMLHttpRequest,還沒有用 jQuery 的 $.ajax(),然後 callback 也還沒有用 promise 包起來,所以還蠻痛苦的,要等到後面才會學到新的寫法。

切板是另一個蠻花時間的部分,但說真的,這過程中可以體會到很多漂亮的網頁都是花蠻多心思才寫得出來。也許是胃口被養大了,所以看到自己爛爛的版面就會覺得很羞恥,但這也是前端的必經之路吧。


上一篇
D16 第八週 (回憶篇)
下一篇
D18 第九週 (回憶篇)
系列文
程式導師實驗計畫第五期 回顧筆記31

尚未有邦友留言

立即登入留言