2010-10-05 5 views
18

Ho un'app per iPhone che richiede un'API e utilizza una struttura param annidata per inserire un nome utente e una password per l'accesso.Params annidati con cURL?

Nel mio controller Rails, che sto recuperando con successo queste informazioni normalmente utilizzando:

username = param[:session][:username] 

mi piacerebbe testare il mio API da shell, utilizzando cURL. Ma non riesco a capire come fornire parametri nidificati? Il codice qui sotto NON funziona ... E ho provato più varianti. Ma non riesco a capirlo?

curl -d '{"session":{"username":"test","password":"password"}}' http://testurl/remote/v1/sessions 

Qualsiasi aiuto, molto apprezzato!

risposta

48

diversi quadri possono interpretare interrogazione http params in modo diverso, ma per le rotaie si dovrebbe essere in grado di cavarsela con il seguente:

curl -d 'session[username]=name&session[password]=pwd' http://testurl/remote/v1/sessions 
+0

perfetto! Grazie! – boymc