GAE/Goからalgoliaを利用する時、httpClientを置き換えないと失敗する様子。appengine用にtransportを設定し直す必要があるみたいです。
import (
"context"
"github.com/algolia/algoliasearch-client-go/algoliasearch"
"google.golang.org/appengine/urlfetch"
"net/http"
)
ctx := appengine.NewContext(r)
client := algoliasearch.NewClient(APP_ID, ADMIN_KEY)
// 下のコードを書く必要がある
transport := &http.Client{
Transport: &urlfetch.Transport{
AllowInvalidServerCertificate: true,
Context: ctx,
},
}
client.SetHTTPClient(transport)
ローカルでは動いてて、本番環境だと動かない時はこれが原因っぽいです。恐らくalgolia以外で外部APIを叩くライブラリでも同じ設定が必要になりそう