Lidemy HTTP Challenge


Posted by cwc329 on 2020-07-06

第一次主要用 JS 的 request,
現在挑戰用 curl 再過一遍。

注意事項:

  1. curl 要帶 token 不知道為何要先加一個'/'。
  2. 因為我先解過一次了,所以說不困難的地方其實不一定很簡單。

lv 1

考驗名詞解釋,第一次卡很久,因為不知道「把 name 一起帶上來」是什麼意思。

lv2

考驗 API 基本 GET。
因為知道是 huli 出的題目,題目看到有 56 就閉著眼睛選下去了。

lv3

用 JS 的 request 套件很快就出來了,但是如果是 curl 要先指定 method,接著還要寫 header 去指名資料型態,還要依照資料型態去傳資料,這就比較麻煩了。

lv4

這邊又比較麻煩了,因為要輸入查詢的關鍵字是中文,需要先用 --data-urlencode 把 url 中要轉換的東西丟進去。
而且要注意的是,轉換的部分是key 還有 value,像是 "q=世界" 這樣,前面加問號或者把 "q=" 先寫進 url 中都不能正確搜尋。

lv5

很單純的 DELETE,沒什麼難度。

lv6

考驗驗證方式,
本來嘗試用 --basic 來處理,但是弄來弄去不太對,就用之前的方法,帶個驗證碼的 header 進去。

lv7

帶驗證碼 header 進去 DELETE,也沒什麼困難的。

lv8

帶複數 header 的方法,-H <header1> -H <header2>

lv9

本來以為 user agent 是 custom header,沒想到 curl 裡面就有了。

lv10

上次有記住答案wwwww
直接用作弊碼進入下一關。

lv11

要用 origin,這邊先查看看 curl --help 有沒有相關指令,沒有就用 -H 塞一個給他。

lv12

這邊第一次在那邊找不到,後來用瀏覽器找發現網址不同,於是用瀏覽器的檢查功能去抓才抓到。
這邊用 curl 的 include 很快就抓到了,而且這個 token 要從轉址中去找,直接去最後網址啥都沒有。

lv13

這關只有一個重點,找一個能用的 proxy。
昨天卡的最有印象的一個地方,一堆錯誤,也是我第一個用 curl 的地方。
然後發現用 curl 雖然也是要自己輸入,但是算方便,因為如果 curl 沒有的東西八成用 -H 自己帶就會過了。
重點是,要找到一個能用的 proxy server。
更快的方法就是用 X-Forwarded-For。
這次我找不到可以用的 proxy 所以就直接開大絕了。

lv14

提示非常送分,不過我記得第一次玩因為跟相似題隔的時間太長了,所以忘記 header 要擺哪裡了,結果這次再回去寫又錯了,只能說基本功還要再加強啊。

lv15

其實沒有題目要解了,不過我就把用 curl 再過一次當作關卡。
這次通關時間就短很多了,畢竟很多東西第一次毫無頭緒只能瘋狂 google,這次就算不知道語法,也知道要怎麼關鍵字怎麼下。

以上是我 Lidemy HTTP Challenge 的心得,說實在話,第一次解到很挫折,常常卡在一些奇怪的地方,像第一題我卡大概快一小時,不過當一些重要環節打通,剩下的都非常簡單了。


#Lidemy #HTTP Challenge







Related Posts

Python Web Flask 實戰開發教學 - SQLAlchemy 與 ORM

Python Web Flask 實戰開發教學 - SQLAlchemy 與 ORM

Week1: CLI 和 Git 筆記

Week1: CLI 和 Git 筆記

Longitudinal Vehicle Model 實作小筆記

Longitudinal Vehicle Model 實作小筆記



Comments