0bcf39bb4b
- Remove VITE_PB_URL=/api from Dockerfile (SDK auto-appends /api) - Fix nginx proxy_pass to keep /api/ prefix for PocketBase - Update pocketbase.ts fallback to window.location.origin - Update PocketBase proxy target to port 8090 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
33 lines
684 B
TypeScript
33 lines
684 B
TypeScript
// src/api/pocketbase.ts
|
|
import PocketBase from 'pocketbase'
|
|
|
|
const pbUrl = import.meta.env.VITE_PB_URL || window.location.origin
|
|
|
|
export const pb = new PocketBase(pbUrl)
|
|
|
|
// 认证状态持久化
|
|
pb.authStore.loadFromCookie(document.cookie)
|
|
|
|
// 保存认证状态到 cookie
|
|
pb.authStore.onChange(() => {
|
|
document.cookie = pb.authStore.exportToCookie({ httpOnly: false })
|
|
})
|
|
|
|
// 获取当前用户
|
|
export function getCurrentUser() {
|
|
return pb.authStore.model
|
|
}
|
|
|
|
// 检查是否已登录
|
|
export function isAuthenticated(): boolean {
|
|
return pb.authStore.isValid
|
|
}
|
|
|
|
// 登出
|
|
export function logout() {
|
|
pb.authStore.clear()
|
|
window.location.href = '/login'
|
|
}
|
|
|
|
export default pb
|