@@ -227,13 +227,22 @@ func NewAPIRequest(r *Request, api string, args []string, isAsync bool) (map[str
227227 requestURL := fmt .Sprintf ("%s?%s" , r .Config .ActiveProfile .URL , encodedParams )
228228 config .Debug ("NewAPIRequest API request URL:" , requestURL )
229229
230- response , err := r .Client ().Get (requestURL )
231- if err != nil {
232- return nil , err
230+ var response * http.Response
231+ if params .Has ("password" ) || params .Has ("userdata" ) {
232+ requestURL = fmt .Sprintf ("%s" , r .Config .ActiveProfile .URL )
233+ response , err = r .Client ().PostForm (requestURL , params )
234+ if err != nil {
235+ return nil , err
236+ }
237+ } else {
238+ response , err = r .Client ().Get (requestURL )
239+ if err != nil {
240+ return nil , err
241+ }
233242 }
234243 config .Debug ("NewAPIRequest response status code:" , response .StatusCode )
235244
236- if response != nil && response .StatusCode == http .StatusUnauthorized {
245+ if response .StatusCode == http .StatusUnauthorized {
237246 r .Client ().Jar , _ = cookiejar .New (nil )
238247 sessionKey , err := Login (r )
239248 if err != nil {
@@ -243,9 +252,18 @@ func NewAPIRequest(r *Request, api string, args []string, isAsync bool) (map[str
243252 params .Add ("sessionkey" , sessionKey )
244253 requestURL = fmt .Sprintf ("%s?%s" , r .Config .ActiveProfile .URL , encodeRequestParams (params ))
245254 config .Debug ("NewAPIRequest API request URL:" , requestURL )
246- response , err = r .Client ().Get (requestURL )
247- if err != nil {
248- return nil , err
255+
256+ if params .Has ("password" ) || params .Has ("userdata" ) {
257+ requestURL = fmt .Sprintf ("%s" , r .Config .ActiveProfile .URL )
258+ response , err = r .Client ().PostForm (requestURL , params )
259+ if err != nil {
260+ return nil , err
261+ }
262+ } else {
263+ response , err = r .Client ().Get (requestURL )
264+ if err != nil {
265+ return nil , err
266+ }
249267 }
250268 }
251269
0 commit comments