HTTP Client
🔨 Provides low-level communication with any SharePoint API
Usage
package main
import (
"fmt"
"log"
"github.com/koltyakov/gosip"
"github.com/koltyakov/gosip/api"
strategy "github.com/koltyakov/gosip/auth/ntlm"
)
func main() {
auth := &strategy.AuthCnfg{}
configPath := "./config/private.json"
if err := auth.ReadConfig(configPath); err != nil {
log.Fatalf("unable to get config: %v\n", err)
}
spClient := api.NewHTTPClient(&gosip.SPClient{AuthCnfg: auth})
endpoint := auth.GetSiteURL() + "/_api/web?$select=Title"
data, err := spClient.Get(endpoint, nil)
if err != nil {
log.Fatalf("%v\n", err)
}
// spClient.Post(endpoint, body, nil) // generic POST
// generic DELETE helper crafts "X-Http-Method"="DELETE" header
// spClient.Delete(endpoint, nil)
// generic UPDATE helper crafts "X-Http-Method"="MERGE" header
// spClient.Update(endpoint, body, nil)
// CSOM helper (client.svc/ProcessQuery)
// spClient.ProcessQuery(endpoint, body, nil)
fmt.Printf("response: %s\n", data)
}Methods
Get
Post
Delete
Update
ProcessQuery
Low-level HTTP client
Last updated
Was this helpful?
