fix: access_token field, username vs name, auth response

This commit is contained in:
Cosmo
2026-03-25 11:59:52 +00:00
parent c015824b36
commit bfb9a07d2d
3 changed files with 18 additions and 6 deletions

View File

@@ -50,10 +50,10 @@ class AuthManager: ObservableObject {
func login(token: String, user: UserInfo) {
self.token = token
self.userName = user.name ?? user.email
self.userName = user.displayName
self.userId = user.id
UserDefaults.standard.set(token, forKey: "pulseToken")
UserDefaults.standard.set(user.name ?? user.email, forKey: "userName")
UserDefaults.standard.set(user.displayName, forKey: "userName")
UserDefaults.standard.set(user.id, forKey: "userId")
isLoggedIn = true
}

View File

@@ -12,18 +12,30 @@ struct RegisterRequest: Codable {
}
struct AuthResponse: Codable {
let token: String
let token: String?
let accessToken: String?
let user: UserInfo
var authToken: String { token ?? accessToken ?? "" }
enum CodingKeys: String, CodingKey {
case token
case accessToken = "access_token"
case user
}
}
struct UserInfo: Codable {
let id: Int
let email: String
let name: String?
let username: String?
let createdAt: String?
var displayName: String { username ?? name ?? email }
enum CodingKeys: String, CodingKey {
case id, email, name
case id, email, name, username
case createdAt = "created_at"
}
}

View File

@@ -114,7 +114,7 @@ struct LoginView: View {
password: password
)
await MainActor.run {
authManager.login(token: response.token, user: response.user)
authManager.login(token: response.authToken, user: response.user)
}
} catch let error as APIError {
await MainActor.run { errorMessage = error.errorDescription ?? "Ошибка"; isLoading = false }
@@ -134,7 +134,7 @@ struct LoginView: View {
name: name
)
await MainActor.run {
authManager.login(token: response.token, user: response.user)
authManager.login(token: response.authToken, user: response.user)
}
} catch let error as APIError {
await MainActor.run { errorMessage = error.errorDescription ?? "Ошибка"; isLoading = false }