#ecmascript-6
#ecmascript-6
Вопрос:
У меня есть API, который отлично работает в Postman и получает результат, когда я указал адрес электронной почты и пароль в разделе заголовка, теперь у меня есть форма входа в систему, и я хочу аутентифицировать пользователя по этому результату данных API, если имя пользователя и пароль совпадают с данными API, а затем вошли в систему, в противном случае отображается ошибка. Я хотел этот тип работы, но я очень смущен, с чего начать. и я хочу использовать только функции es6.
Ответ №1:
Вы создаете login
функцию, которая вызывает ajax-вызов вашего API, возможно, используя fetch
API (или какую-либо другую библиотеку ajax, подобную Axios
). Ваш вызов возвращает обещание с результатом от сервера, на который вы затем действуете.
const login = (formValues) => {
return fetch('/your/api/url', {
method: 'POST',
body: JSON.stringify(formValues)
})
.then((response) => JSON.parse(response))
.then((data) => {
// do something with the server data
})
.catch((error) => {
// do something with the error
});
};
В этом суть. Вашему серверу могут потребоваться дополнительные параметры запроса, поэтому просмотрите API для любого выбранного вами метода ajax. Опять же, существуют подобные библиотеки Axios
, которые могут абстрагировать / упрощать / расширять fetch
API для вас, или вы можете просто использовать его напрямую. Самое главное, что нужно помнить, это то, что вы не можете получить доступ к возвращаемым значениям, пока они у вас на самом деле не будут, поэтому, если вы не знакомы с Promises, вам также следует изучить их.