本文主要讲了我们在访问网址时候,为了实现一些免登录等效果,需要在会话Session中添加一些变量,已实现特定效果。
关键代码在于蓝色这部分:
<script setup>
import { ref } from 'vue'
import axios from 'axios'
const loginUrl = `http://sit.BBBBB.com/login/cross/domain`
const targetPageUrl = `http://sit.BBBBBB.com/report/380812bb6adc4177ad427181940fdc5a`
const isLoggedIn = ref(false)
const setCookie = (name, value, domain) => {
document.cookie = `${name}=${value};path=/;domain=${domain}`
}
const loginAndOpenPage = async () => {
try {
const response = await axios.get(loginUrl, {
params: {
username: 'xiaoqiang',
password: '55454@kajlksj',
validity: -1,
callback: 'myfunction',
},
})
const { data } = response
if (data) {
console.log(data, 'data')
const data1 = data.slice(11)
console.log(data1)
const res = JSON.parse(data1.substring(0, data1.length - 1))
console.log('res', res)
// 将 accessToken 存储到 sessionStorage 中
window.sessionStorage.setItem('fine_auth_token', res.accessToken)
// 同时,设置带有特定 domain 的 cookie
// setCookie('fine_auth_token', res.accessToken, 'localhost')
// setCookie('fine_auth_token', res.accessToken, '10.31.125.7')
setCookie('fine_auth_token', res.accessToken, 'sit.BBBBBB.com')
setCookie('fine_auth_token', res.accessToken, 'dev.BBBBBBB.com')
isLoggedIn.value = true
} else {
alert('登录失败')
}
} catch (error) {
console.error('登录请求失败:', error)
alert('登录请求失败')
}
}
</script>