Я пробую аутентификацию на стороне сервера с помощью API, который я построил. Все мои маршруты были проверены и, похоже, отлично работают на почтальоне. Я использую Ax ios на внешнем интерфейсе, и все маршруты publi c работают отлично. Вход в систему с использованием Ax ios тоже работает нормально. Это частные маршруты, которые являются проблемой. Я привык к API Google для аутентификации переднего плана, поэтому я не могу понять, как авторизовать частные маршруты.
ax ios. js
axios.defaults.headers.common['Authorization'] = token;
axios.defaults.headers.post['Content-Type'] = 'application/json';
const login = () => {
Axios({
url: '/auth/login',
baseURL: 'http://<ip address>/api/v1',
method: 'post',
data: {
email: '<email>',
password: '<password>'
}
}).then(res => sessionStorage.setItem('auth', res.data.token))
.catch(err => console.log(err))
}
Так что приведенный выше код работает нормально, но я могу пойти в неправильном направлении, сохранив токен в хранение сессии в браузере. Код ниже - это личный маршрут статьи. где я получаю следующее сообщение: Failed to load resource: the server responded with a status of 401 (Unauthorized)
.
ax ios. js
const postArticle = () => {
Axios({
url: '/articles',
baseURL: 'http://<ip address>/api/v1',
method: 'post',
data: {
"title": "New Title",
"subtitle": "Optional Subtitle",
"description": "Small Intro to Social Media Integration",
"content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Donec et odio pellentesque diam volutpat commodo. Odio aenean sed adipiscing diam. Lacus viverra vitae congue eu consequat. Porttitor rhoncus dolor purus non enim praesent elementum. Aliquam purus...",
"tag": [
"Mobile Development",
"Diary"
]
}
}).then(res => console.log(res.data))
.catch(err => console.log(err))
}
Когда я console.log токен, он выходит верно, но я не уверен, как мне нужно изменить postArticle, чтобы взять в заголовках по умолчанию.