Use non-anonymous struct to decode devices list

This commit is contained in:
Till Faelligen 2020-02-11 11:55:08 +01:00
parent 303408be33
commit 60c9cc6946

View file

@ -40,6 +40,10 @@ type deviceUpdateJSON struct {
DisplayName *string `json:"display_name"` DisplayName *string `json:"display_name"`
} }
type devicesDeleteJSON struct {
Devices []string `json:"devices"`
}
// GetDeviceByID handles /devices/{deviceID} // GetDeviceByID handles /devices/{deviceID}
func GetDeviceByID( func GetDeviceByID(
req *http.Request, deviceDB *devices.Database, device *authtypes.Device, req *http.Request, deviceDB *devices.Database, device *authtypes.Device,
@ -180,17 +184,15 @@ func DeleteDevices(
} }
ctx := req.Context() ctx := req.Context()
d := struct { payload := devicesDeleteJSON{}
Devices []string `json:"devices"`
}{}
if err := json.NewDecoder(req.Body).Decode(&d); err != nil { if err := json.NewDecoder(req.Body).Decode(&payload); err != nil {
return httputil.LogThenError(req, err) return httputil.LogThenError(req, err)
} }
defer req.Body.Close() // nolint: errcheck defer req.Body.Close() // nolint: errcheck
if err := deviceDB.RemoveDevices(ctx, localpart, d.Devices); err != nil { if err := deviceDB.RemoveDevices(ctx, localpart, payload.Devices); err != nil {
return httputil.LogThenError(req, err) return httputil.LogThenError(req, err)
} }