#ruby-on-rails #curl #request
Вопрос:
Мне нужно сгенерировать маркер API для моего приложения. Документы из внешней службы показывают мне информацию ниже:
This request uses normal post webforms.
<password> must be md5 encoded.
Endpoint: api/token
Request: "grant_type: password
Password: <password>
Username: <USERNAME>
"
Что я сделал, так это сгенерировал кодированный пароль md5 в консоли:
> Digest::MD5.hexdigest("ZCW2OQo5yhfmTKutGjiCWQ==")
=> "53a89a22375a3665cfe4cb92ee17992b"
И поместите его в команду curl, как показано ниже:
curl -d "grant_type=passwordamp;password=53a89a22375a3665cfe4cb92ee17992bamp;username=my_user_name" -X POST https://enpoint/api/token
Но вместо ожидаемого ответа я получаю сообщение об ошибке:
{«ошибка»:»недопустимо»}
Ответ №1:
Похоже, что ваш пароль уже каким — то образом закодирован-это кодировка двоичной строки base64.
Попробуйте ввести свой фактический пароль вместо этой уже закодированной версии в качестве аргумента hexdigest
.