我剛剛為我的 nuxt 應用程式從開發模式切換到生產模式。
它使用@nuxtjs/auth-next并且在開發版本中使用的一切都可以像魅力一樣正常作業。
今天我剛剛將網站部署到cloudflare頁面,從那時起該this.$auth.user屬性始終為空,即使我登錄兩次,auth用戶始終為空,它會迫使我重新登錄。
我能做些什么?
登錄.vue
<script lang="ts">
import Vue from 'vue'
export default Vue.extend({
name: 'Login',
mounted() {
this.$auth.loginWith('discord')
},
head: {
title: "Login | Abred"
},
})
</script>
回呼設定為/,主頁尚未處理與 oauth 相關的任何內容。
可能不是 cloudflare 問題,因為 vercel 也有同樣的行為。
Nuxt 配置:
export default {
head: {
title: 'Abred',
htmlAttrs: {
lang: 'en',
},
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
{ hid: 'description', name: 'description', content: 'Abred the only bot you shall need for managing temporary voice channels!' },
{ name: 'format-detection', content: 'telephone=no' },
],
link: [
{ rel: 'icon', type: 'image/png', href: '/assets/transparent-logo.png' },
{
rel: "stylesheet",
href: 'https://fonts.googleapis.com/icon?family=Material Icons'
}],
},
css: [
"./styles/globals.scss"
],
plugins: [],
components: true,
buildModules: [
'@nuxt/typescript-build',
'@nuxtjs/tailwindcss',
],
modules: [
'@nuxtjs/axios',
'@nuxtjs/auth-next',
'@nuxtjs/toast',
'@nuxtjs/dotenv',
],
auth: {
strategies: {
discord: {
clientId: process.env.CLIENT_ID,
clientSecret: process.env.CLIENT_SECRET,
}
},
redirect: {
callback: '/',
}
},
axios: {
baseURL: 'https://api.abred.bar',
},
build: {},
}
現場演示: 登錄:
uj5u.com熱心網友回復:
target: static您通過靜態站點生成 ( )部署您的應用程式。
據我所知,您需要一個通過 oAuth2 運行的服務器nuxt-auth@next(尤其是由于使用了客戶端密碼)。這也是它在開發模式下作業但在部署時不作業的最可能原因。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/455352.html
標籤:Vue.js nuxt.js nuxt-auth cloudflare 页面
上一篇:Vue3,在哪里監聽發射事件
下一篇:使用Java后端在更廣泛的應用程式中的兩個Vue.js應用程式實體之間路由:如何從第一個應用程式重定向到特定部分?
