Go言語で開発したAPIのレスポンスが最新の状態にならない

実現したいこと

Go言語(golang)とGinでAPIを開発していますが、最新の状態が取得できるようにしたです。
現在データが変わっている、増えているにも関わらずレスポンスが変わりません。

前提

DBとしてMongoDBを使用しており、Goでそこから情報を取得し返却しています。
レスポンスは問題なく帰っているのですが、「go run main.go」を実行した時点からレコードを増やしたり
情報を変更していても、「go run main.go」コマンドを実行した時点のデータから変わっていない情報のレスポンスが返却されます。

Go言語にはレスポンスを自動でキャッシュし、それを返却する機能があるのしょうか?
キャッシュの更新等、最新の情報を返却できるようにしたいです。
色々と調べてみたのですが、解決できず困っています。解決策、または知識がございましたらご助言いただけますと幸いです。

該当のソースコード

func SetGetDbImagesService(router *gin.RouterGroup) { // mongodb接続 mongo, err := mongo.Connect(context.TODO(), options.Client().ApplyURI("mongodb://root:{{ パスワード }}@127.0.0.1:27017")) if err != nil { panic(err) } defer func() { if err := mongo.Disconnect(context.TODO()); err != nil { log.Fatalf("mongoDBとの接続を解除", err) } }()    // mongodbへ接続とカーソル取得 imagesc := mongo.Database("aipicture").Collection("images") cur, err := imagesc.Find(context.TODO(), bson.D{}) if err != nil { panic(err) } // 返却用変数に取得情報をセット var images []bson.M for cur.Next(context.TODO()) { var res bson.M err := cur.Decode(&res) if err != nil { panic(err) } images = append(images, res) } router.GET("/getDbImages/", func(c *gin.Context) { c.JSON(http.StatusOK, gin.H{ "images": images, }) }) }

試したこと

ローカルだけでなく、GoogleDriveのAPIから情報を取得して試してみたりしましたが
変わらず「go run main.go」を実行した時点のレスポンスしか返却されず、追加したファイル等は一度プロセスを終了し
改めて「go run main.go」を実行しなければ取得できませんでした。

補足情報(FW/ツールのバージョンなど)

Go@1.20.6
mongodb@6.0.8
nginx@1.20.1

コメントを投稿

0 コメント