Golang Maps
Jump to navigation
Jump to search
package main
import (
// "string"
"fmt"
"github.com/go-resty/resty/v2"
"encoding/json"
"reflect"
)
var PDAuthToken = ""
var url = "https://api.pagerduty.com/services/XXXXXXX"
func test1() {
client := resty.New()
rsp,err := client.R().SetHeader("Accept", "application/json").SetHeader("Authorization", "Token token="+PDAuthToken).Get(url)
if err != nil {
fmt.Println(err)
return
}
rspBody := rsp.Body()
rspJSON := string(rspBody)
// Declared an empty map interface
var result map[string]interface{}
// Unmarshal or Decode the JSON to the interface.
json.Unmarshal([]byte(rspJSON), &result)
fmt.Println("Type:", reflect.TypeOf(result))
fmt.Println("Service :", result["service"])
service, valid := result["service"].(map[string]interface{})
fmt.Println("service_alert_grouping_timeout :", service["alert_grouping_timeout"])
_ = valid
}
func main(){
test1()
}