GolangでLinebot②
前回の続き。もう少し意味のあるものにしていく。
作るもの
楽天市場APIを使って1日1回、楽天市場に出品されているワインの中でレビュー平均の降順でいくつかLineBotで通知しようというもの。
まずはRakuten DevelopersでアプリIDを発行してAPIをcallできるようにします。
公式の手順がわかりやすいので割愛します。
リクエストURLは以下のものを使用します。
https://app.rakuten.co.jp/services/api/IchibaItem/Search/20170706?${params}
リクエストイメージ
Parameter | Value |
---|---|
applicationId | 自分のアプリID |
genreId | 100317 |
sort | +reviewAverage |
Hits | 2 |
https://app.rakuten.co.jp/services/api/IchibaItem/Search/20170706?applicationId=${applicationId}&genreId=100317&sort=+reviewCount
applicationIdはHerokuの環境変数に設定してos.Getenv()で取得できるようにしときます。
以下が作成物になります。
あとは Heroku Schedulerで定期実行させます。
USTでしか指定できないので、9時間差で指定します。
作ってみてよかったこと
- 基本的な文法をおさらいできたこと。
- すでに結構身についていることが確認できてうれしい。
- Goのパッケージについて理解できたこと。
- JsonのParse処理を実装できたこと。
- 特にネストした配列の構造体を部分が理解できたのが大きかった。