Add login functionality
This commit is contained in:
+19
-2
@@ -3,8 +3,25 @@ definePageMeta({
|
||||
layout: 'login'
|
||||
})
|
||||
|
||||
const login = () => {
|
||||
console.log('login')
|
||||
const login = async () => {
|
||||
const payload = {
|
||||
username: document.getElementById('username')?.value,
|
||||
password: document.getElementById('password')?.value
|
||||
}
|
||||
const config = useRuntimeConfig()
|
||||
const apiBase = config.public.apiBase
|
||||
const api_url = `${apiBase}/auth/token`
|
||||
const { data: user } = await useFetch(api_url, {
|
||||
method: 'POST',
|
||||
body: payload
|
||||
})
|
||||
if (!user.value) {
|
||||
throw createError({
|
||||
statusCode: 401,
|
||||
statusMessage: 'Unauthorized'
|
||||
})
|
||||
}
|
||||
localStorage.setItem('user', JSON.stringify(user.value))
|
||||
navigateTo('/')
|
||||
}
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user