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

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

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

username = param[:session][:username]

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

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

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

Ответы на вопрос(2)

Решение Вопроса

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

curl -d 'session[username]=name&session[password]=pwd' http://testurl/remote/v1/sessions
 boymc05 окт. 2010 г., 06:08
идеально! Спасибо!

Я нашел это на работу. Учитывая 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
 dcsan06 нояб. 2018 г., 10:51
обратите внимание, что просто--data полоски CR и LF, так что вы можете использовать это тоже, если вы хотите, чтобы напечатать свой JSON

Ваш ответ на вопрос