[iOS study] 練習在 Playground 用 JSONDecoder 將 JSON 轉換成自訂型別,至少練習三種 JSON API
1 利用 RSS Generator 產生 API 抓取 JSON 資料
https://rss.itunes.apple.com/api/v1/tw/movies/top-movies/all/25/explicit.json
一開始的程式碼跑出來一直不成功,後來運用do catch去找到底錯在哪裡
最後一句顯示:期望解碼Double但是找到string,不過我設定的並沒有Double,後來試試把比較特別的Date先取消
這樣就成功了!!
2 GitHub user API
比方 https://api.github.com/users/caspyin
這次的資料裡也有時間,發現需要多加一條
decoder.dateDecodingStrategy = .iso8601
這樣就可以成功轉換
3 foursquare API
研究 https://developer.foursquare.com/docs/api/venues/search
首先要註冊foursquare帳號,可以用facebook帳號快速授權註冊
其次需要新建app資料(我連結是輸入medium的也可以通過,所以新建的資料目的是練習測試,可以先不用擔心資料的認真程度,到信用卡頁面只要返回就好)
新建一個app資料後就可以得到自己的Client ID以及Client Secret,樣子如下圖
接下來可以設定取得API的url
https://api.foursquare.com/v2/venues/search
?ll=40.7,-74
&client_id=CLIENT_ID
&client_secret=CLIENT_SECRET
&v=YYYYMMDD
ll= 後面的數字是經緯度,foursquare我還是不熟悉用,改用googleMapt查經緯度,我查了上課地點附近的松江南京捷運站
- 在地圖上的所需地點或區域按一下滑鼠右鍵。
- 選取 [這是哪裡?]。
- 底部會顯示一張包含座標的資訊卡。
string要留意不要有空格,不然string生成看起來正常,但是url會變成nil
把問題都排除後就可以成功抓取資料囉!