Я реализую функцию Забыли пароль, используя truevault API.Теперь я тестировал запросы, следующие за потоком с Postman, и это работает, но, когда я начал кодировать с помощью axios, он продолжает создавать проблемы с аутентификацией.Я пробовал несколько комбинаций (логические, а не случайное сумасшествие).
Также стоит упомянуть, что я смог составить список своих истинных пользователей из пользовательского интерфейса (не только почтальона), и попытался имитировать тот же принцип для запроса на публикацию, но он не работал
Вот запрос почтальона, который работал для меня:
- для запроса URL, метод: POST
- url: https://api.truevault.com/v1/password_reset_flows
- Для вкладки АвторизацияЯ заполнил поле «username» пользовательским API-ключом truevault и оставил поле «password» пустым
- И на вкладке «Body» я заполнил его текстом Json и для параметров переключателей,Я выбрал raw и выбрал json в качестве формата.(это единственные используемые вкладки)
Тело json выглядит следующим образом
{
"name":"XXXXX password reset",
"sg_template_id":"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXcf42",
"sg_api_key":"XX.XXXXXXXXXXXXXXXXXXXXXX.XXXXXX_XXXX_XXXXXXXXXXXXXXXXXXXXXXXXXXZftJo",
"user_email_value_spec":{
"system_field":"username"
},
"from_email_value_spec":{
"literal_value":"do-not-reply@XXXXXX.com"
},
"substitutions":{
"{{FIRST_NAME}}":{
"user_attribute":"first_name"
}
}
}
И результат был успешным,
Теперь, когда я попыталсяс axios я продолжал получать ошибку аутентификации.Код выглядит следующим образом:
createPasswordResetFlow()
{
axios.defaults.headers.common["Authorization"] = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX27"; //tv user API KEY
axios.defaults.headers.post["Content-Type"] = "application/json";
var request = axios.post("https://api.truevault.com/v1/password_reset_flows",
{
auth:
{
username: 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX27',
password: ""
},
data:
{
"name": "XXXXX password reset",
"sg_template_id": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXcf42",
"sg_api_key": "XX.XXXXXXXXXXXXXXXXXXXXXX.XXXXXX_XXXX_XXXXXXXXXXXXXXXXXXXXXXXXXXZftJo",
"user_email_value_spec":
{
"system_field": "username"
},
"from_email_value_spec":
{
"literal_value": "do-not-reply@XXXXXX.com"
},
"substitutions":
{
"{{FIRST_NAME}}":
{
"user_attribute": "first_name"
}
}
}
})
.then((res) =>
{
console.log(res);
return res.data.users;
})
.catch(error =>
{
console.log('error', error);
return error;
});
}
Как уже упоминалось ранее, я занимался исследованиями и попытался, но безрезультатно, если кто-то может мне помочь, пожалуйста.