API POST Calls Update

POST calls were not getting their JSON data written
This commit is contained in:
densestvoid
2020-08-23 21:25:02 -04:00
parent 010fd832ac
commit d8cdcf4ef2
9 changed files with 159 additions and 141 deletions

View File

@ -1,9 +1,10 @@
package groupme
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
"net/url"
)
// GroupMe documentation: https://dev.groupme.com/docs/v3#users
@ -70,31 +71,16 @@ Parameters: See UserSettings
func (c *Client) UpdateMyUser(us UserSettings) (*User, error) {
URL := fmt.Sprintf(c.endpointBase + updateMyUserEndpoint)
httpReq, err := http.NewRequest("POST", URL, nil)
jsonBytes, err := json.Marshal(&us)
if err != nil {
return nil, err
}
data := url.Values{}
if us.AvatarURL != "" {
data.Add("avatar_url", us.AvatarURL)
httpReq, err := http.NewRequest("POST", URL, bytes.NewBuffer(jsonBytes))
if err != nil {
return nil, err
}
if us.Name != "" {
data.Add("name", us.Name)
}
if us.Email != "" {
data.Add("email", us.Email)
}
if us.ZipCode != "" {
data.Add("zip_code", us.ZipCode)
}
httpReq.PostForm = data
var resp User
err = c.doWithAuthToken(httpReq, &resp)
if err != nil {