Difference between revisions of "Golang Maps"

From UVOO Tech Wiki
Jump to navigation Jump to search
(Created page with "''' package main import ( // "string" "fmt" "github.com/go-resty/resty/v2" "encoding/json" "reflect" ) var PDAuthToken = "" var url = "https://api.pagerd...")
 
Line 1: Line 1:
'''
+
```
 
package main
 
package main
  
Line 37: Line 37:
 
     test1()
 
     test1()
 
}
 
}
'''
+
```

Revision as of 00:58, 4 August 2021

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()
}