2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Google App Engine Go で Cloud Firestore Native Mode を使う

Posted at

Cloud Firestore

今回使う Cloud Firestore ですが、Firebase の技術をベースにして、Google Cloud Platform に統合されたサービスです。
ネット上で調べると、結構 Firebase に関する記事が出てきますが、作成方法などがちょっと違いますので、メモをまとめていきます。

Native mode については下記に参考:
Native mode とは?

GAE

サーバ上で利用する時は公式手順を参考すればできます:
クイックスタート:サーバ

AppEngineを使う時の変更点:

  1. プロジェクトの課金を有効化する必要があります。有効しないとデプロイ後は Cloud Firestore との Socket 通信時にエラーとなります
  2. コードの変更ところは下記のように:
handlers.go
import (
	"google.golang.org/appengine"
	"google.golang.org/appengine/log"

	"cloud.google.com/go/firestore"
)

func TestHandler(w http.ResponseWriter, r *http.Request) {
	ctx := appengine.NewContext(r) // ここは要注意
	client, err := firestore.NewClient(ctx, projectID)
	if err != nil {
		log.Errorf(ctx, "Failed to create client: %v", err) // log関数の引数は違う
	}
	// Close client when done.
	defer client.Close()
}

ここで出した log は gcloud app logs では見れなくて、stackdriver logging で見れます。

後書き

初めての利用で公式ドキュメントを見ながらテストしてますが、間違っている点などありましたらコメント等でお知らせ下さい。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?