Skip to content

Instantly share code, notes, and snippets.

@sinmetal
Created November 1, 2017 09:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sinmetal/0502af9bc085b5dc76afc7ec9bb20b39 to your computer and use it in GitHub Desktop.
Save sinmetal/0502af9bc085b5dc76afc7ec9bb20b39 to your computer and use it in GitHub Desktop.
Metdata ServerからProjectIDを取得するサンプル
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
const MetadataServerURL = "http://metadata.google.internal/computeMetadata/v1/project/"
func main() {
fmt.Println(getProjectID())
}
func getProjectID() (string, error) {
client := &http.Client{}
req, err := http.NewRequest(http.MethodGet, fmt.Sprintf("%s/project-id", MetadataServerURL), nil)
req.Header.Add("Metadata-Flavor", "Google")
resp, err := client.Do(req)
if err != nil {
return "", err
}
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
return "", err
}
return string(body), nil
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment