// // LoginView.swift // Weibo // // Created by Qihua Pan on 2020/8/17. // Copyright © 2020 Qihua Pan. All rights reserved. // import SwiftUI import CoreData import SwiftyJSON import Alamofire struct LoginView: View { @Environment(\.managedObjectContext) var contenxt:NSManagedObjectContext @EnvironmentObject var user:User let queue=OperationQueue() @State var showView=false func login() { let request=WBAuthorizeRequest() request.redirectURI="https://api.weibo.com/oauth2/default.html" WeiboSDK.send(request) } func loadUserInfo(){ print("toekn=\(self.user.access_token),date=\(self.user.expiration_Date)") self.showView=false AF.request("https://api.weibo.com/2/users/show.json",parameters: ["access_token":self.user.access_token,"uid":self.user.uid]).responseJSON { response in if let data=response.data,let json = try? JSON(data: data){ if let name=json["name"].string, let avatar_hd=json["avatar_hd"].string, let desc=json["description"].string, let statuses_count=json["statuses_count"].int32, let friends_count=json["friends_count"].int32, let followers_count=json["followers_count"].int32{ self.user.name=name self.user.avatar_hd=avatar_hd self.user.desc=desc self.user.statuses_count=statuses_count self.user.friends_count=friends_count self.user.followers_count=followers_count UserData.saveContext() self.showView=true } }else{ print("loadUserInfo error") } } } var body: some View { VStack { if self.user.access_token==nil{ Text("正在跳转到授权页面").onAppear(perform: { self.login() }) } else if self.user.expiration_Date