created get simkl watchlist function

This commit is contained in:
John O'Keefe 2024-07-30 20:40:16 -04:00
parent de38d0335b
commit c95b658131

View File

@ -1,36 +1,39 @@
package main package main
import ( import (
"bytes"
"encoding/json" "encoding/json"
"fmt"
"io" "io"
"log" "log"
"net/http" "net/http"
"os"
) )
func SimklQuery(body interface{}, login bool) (json.RawMessage, string) { func (a *App) SimklGetUserWatchlist() SimklWatchList {
reader, _ := json.Marshal(body)
response, err := http.NewRequest("POST", "https://graphql.anilist.co", bytes.NewBuffer(reader))
if err != nil {
log.Printf("Failed at response, %s\n", err)
}
if login && (SimklJWT{}) != simklJwt {
response.Header.Add("Authorization", "Bearer "+simklJwt.AccessToken)
} else if login {
return nil, "Please login to anilist to make this request"
}
response.Header.Add("Content-Type", "application/json")
response.Header.Add("Accept", "application/json")
client := &http.Client{} client := &http.Client{}
res, reserr := client.Do(response)
if reserr != nil { req, _ := http.NewRequest("GET", "https://api.simkl.com/sync/all-items/anime/watching", nil)
log.Printf("Failed at res, %s\n", err)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Authorization", "Bearer "+simklJwt.AccessToken)
req.Header.Add("simkl-api-key", os.Getenv("SIMKL_CLIENT_ID"))
resp, err := client.Do(req)
if err != nil {
fmt.Println("Errored when sending request to the server")
return SimklWatchList{}
} }
defer res.Body.Close() defer resp.Body.Close()
respBody, _ := io.ReadAll(resp.Body)
returnedBody, err := io.ReadAll(res.Body) var watchlist SimklWatchList
return returnedBody, "" err = json.Unmarshal(respBody, &watchlist)
if err != nil {
log.Printf("Failed at unmarshal, %s\n", err)
}
return watchlist
} }