はじめに
こんばんは。
今回はこの本を読み始めました。
なんとなんと2019年12月の本です。
出てすぐ買ったので、まる2年寝かした本です。 発酵しています。
GoもNuxtも興味あるので、早速やっていきます。
今回は1〜4章まで
4章はGo部分のみやっています。 環境構築にかなりつまずいたので...
本題
各バージョン
とりあえず、本で紹介されている各ツールのバージョンは軒並み古いですので、全部最新版でやっていきます。
go
$ go version go version go1.18 darwin/amd64
echo
$ go get github.com/labstack/echo/v4 go: added github.com/labstack/echo/v4 v4.7.2
nuxt
"nuxt": "^2.15.8"
dep
本で紹介されている dep
は使っておらず gomod
を使っています。
(入れるの大変だったから代替品ないかなと調べてたらすでに古いということだったので...)
realize
こちらも本で紹介されている realize
は使わず air
を使いました。
(こちらも同じく入れるの大変だったので調べたら、以下同文)
実行してみる
$ go run server.go ____ __ / __/___/ / ___ / _// __/ _ \/ _ \ /___/\__/_//_/\___/ v4.7.2 High performance, minimalist Go web framework https://echo.labstack.com ____________________________________O/_______ O\ ⇨ http server started on [::]:8080
おけです。
echoフレームワークのメジャーバージョンやGoのバージョンもだいぶ上がっていたので、全く動かないかなと心配していましたが、Goのコードに関してはほぼ問題なく動きました。
1点、 google.golang.org/api/youtube/v3
で取得するデータを指定するところで本では
call := yts.Videos.List("id,snippet").Chart("mostPopular").MaxResults(3)
と記載されていたのですが、これではエラーになりました。 解決策としては配列で指定すれば良いみたいでした。
call := yts.Videos.List([]string{"id", "snippet"}).Chart("mostPopular").MaxResults(3)
仮にidのみ指定すると以下みたいな感じで取れます。
[ { "id": "jjXZJZ4F8Ak", "kind": "youtube#video" }, { "id": "r8Eypb1xYPM", "kind": "youtube#video" }, { "id": "p0vxVY2HMEs", "kind": "youtube#video" } ]
終わりに
go久々にやってみましたが、全くわかりませんね。 それ以上に nuxtもですが。。。
次はnuxtの部分からやっていきます。