Вложенные параметры с cURL? - PullRequest
       10

Вложенные параметры с cURL?

20 голосов
/ 05 октября 2010

У меня есть приложение для iPhone, запрашивающее API, и оно использует вложенную структуру параметров для передачи имени пользователя и пароля для входа в систему.

В моем контроллере Rails я успешно получаю эту информацию, как правило, используя:

username = param[:session][:username]

Я бы хотел протестировать мой API из оболочки, используя cURL. Но я не могу понять, как предоставить вложенные параметры? Код ниже НЕ работает ... И я попробовал несколько вариантов. Но просто не могу понять это?

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

Любая помощь, высоко ценится!

Ответы [ 2 ]

53 голосов
/ 05 октября 2010

Разные фреймворки могут интерпретировать параметры HTTP-запроса по-разному, но для rails вы должны иметь возможность сойтись со следующим:

curl -d 'session[username]=name&session[password]=pwd' http://testurl/remote/v1/sessions
0 голосов
/ 06 ноября 2018

Я нашел, что это работает. Данный JSON-объект типа

{ "opts": {
    "finder": { 
      "cname":"superlatives"
    }
  }
}



curl -H "Content-Type: application/json" \
  -X POST \
  --data-binary '{"opts":{"finder":{"cname":"superlatives"}}}' \
  http://YOURSERVER.com/api/grams/one
...