mirror of
https://github.com/wahyd4/libr-ios.git
synced 2026-08-09 05:06:46 +10:00
社交登录集成
This commit is contained in:
@@ -4,7 +4,6 @@
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="9040"/>
|
||||
<capability name="Alignment constraints to the first baseline" minToolsVersion="6.0"/>
|
||||
<capability name="Constraints to layout margins" minToolsVersion="6.0"/>
|
||||
<capability name="Navigation items with more than one left or right bar item" minToolsVersion="7.0"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
<!--个人中心-->
|
||||
@@ -294,12 +293,7 @@
|
||||
<tabBarItem key="tabBarItem" title="个人中心" image="UserMale" id="q3u-i6-AFn"/>
|
||||
<navigationItem key="navigationItem" title="个人中心" id="aqp-9i-WAE">
|
||||
<barButtonItem key="backBarButtonItem" title="返回" id="z0q-eR-feQ"/>
|
||||
<rightBarButtonItems>
|
||||
<barButtonItem image="Settings" id="8hk-iR-75v">
|
||||
<color key="tintColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</barButtonItem>
|
||||
<barButtonItem id="ShJ-Vd-gEK"/>
|
||||
</rightBarButtonItems>
|
||||
<barButtonItem key="rightBarButtonItem" id="ShJ-Vd-gEK"/>
|
||||
</navigationItem>
|
||||
<nil key="simulatedTopBarMetrics"/>
|
||||
<connections>
|
||||
@@ -831,7 +825,7 @@
|
||||
</tableViewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="wQd-t8-Eyc" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="-7341" y="4769"/>
|
||||
<point key="canvasLocation" x="-7117" y="5017"/>
|
||||
</scene>
|
||||
<!--探索发现-->
|
||||
<scene sceneID="Krh-MH-97G">
|
||||
|
||||
@@ -29,6 +29,7 @@ class GraphsUIViewController: UIViewController, LineChartDelegate {
|
||||
|
||||
if (json != nil) {
|
||||
|
||||
xlabels00.removeAll()
|
||||
data00.removeAll()
|
||||
data01.removeAll()
|
||||
data02.removeAll()
|
||||
|
||||
@@ -15,7 +15,7 @@ import JWT
|
||||
|
||||
struct LibrxService {
|
||||
|
||||
private static let baseURL = "http://uat.librme.com"
|
||||
private static let baseURL = "http://123.57.95.237"
|
||||
private static let defaultThumail = "http://7pn5d3.com1.z0.glb.clouddn.com/9050353.png"
|
||||
|
||||
|
||||
@@ -48,6 +48,7 @@ struct LibrxService {
|
||||
case UserLikedPosts(userId: Int)
|
||||
case UserBookMarkPosts(userId: Int)
|
||||
case UserData(userId: Int)
|
||||
case Callback
|
||||
|
||||
var description: String {
|
||||
switch self {
|
||||
@@ -75,6 +76,7 @@ struct LibrxService {
|
||||
case .UserPosts(let userId): return "/api/v1/users/\(userId)/posts"
|
||||
case .UserLikedPosts(let userId): return "/api/v1/users/\(userId)/posts/liked"
|
||||
case .UserBookMarkPosts(let userId): return "/api/v1/users/\(userId)/posts/bookmarked"
|
||||
case .Callback: return "/api/v1/users/auth/callback"
|
||||
default: return ""
|
||||
}
|
||||
}
|
||||
@@ -228,6 +230,31 @@ struct LibrxService {
|
||||
|
||||
}
|
||||
|
||||
static func callbackForSocial(uid: Int, provider: String, access_token: String, refresh_token: String , name: String, avatar: String, response: (user:User?) ->()){
|
||||
|
||||
let urlString = baseURL + ResourcePath.Callback.description
|
||||
|
||||
let parameters:[String : AnyObject] = [
|
||||
"uid" : uid,
|
||||
"provider" : provider,
|
||||
"access_token" : access_token,
|
||||
"name": name,
|
||||
"avatar": avatar
|
||||
]
|
||||
|
||||
let headers:[String: String] = [
|
||||
"Authorization": "love_libr"
|
||||
]
|
||||
|
||||
Alamofire.request(.POST, urlString, headers:headers, parameters: parameters).response{(_,_,json,_) in
|
||||
|
||||
let data = JSON(data: json!)
|
||||
handleUserInfo(data, response: response)
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static func loginWithEmail(email: String, password: String, response: (user:User?) ->()) {
|
||||
|
||||
let urlString = baseURL + ResourcePath.SignIn.description
|
||||
|
||||
@@ -78,14 +78,34 @@ class LoginViewController: UIViewController {
|
||||
|
||||
UMSocialDataService.defaultDataService().requestSnsInformation(UMShareToSina, completion: {(res:UMSocialResponseEntity!) ->Void in
|
||||
let data = res.data
|
||||
print(data)
|
||||
|
||||
// let openId:String = data["openid"] as! String!
|
||||
let name:String = data["screen_name"] as! String!
|
||||
let avatar:String = data["profile_image_url"] as! String!
|
||||
let uid:Int = data["uid"] as! Int!
|
||||
|
||||
let accessToken:String = data["access_token"] as! String!
|
||||
//let genderInt:Int = data["gender"] as! Int
|
||||
//let gender:String = genderInt==1 ? "男":"女"
|
||||
|
||||
LibrxService.callbackForSocial(uid, provider: "weibo", access_token: accessToken, refresh_token: "", name: name, avatar: avatar, response: { (user) -> () in
|
||||
|
||||
if let _user = user {
|
||||
self.delegate?.loginViewControllerDidLogin(self)
|
||||
LocalStore.setAccessToken(_user.token)
|
||||
LocalStore.setAccessUserId(_user.id)
|
||||
self.dismissViewControllerAnimated(true, completion: nil)
|
||||
}else {
|
||||
self.alert(NSLocalizedString("username or password error", comment: "for login error"))
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
|
||||
}
|
||||
|
||||
@IBAction func signupButtonPressed(sender: AnyObject) {
|
||||
|
||||
@@ -60,7 +60,7 @@ class LogupViewController: UIViewController {
|
||||
LocalStore.setAccessUserId(_user.id)
|
||||
self.dismissViewControllerAnimated(true, completion: nil)
|
||||
}else {
|
||||
self.alert(NSLocalizedString("username or password error", comment:"for login error"))
|
||||
self.alert(NSLocalizedString("登录失败了,请稍候再试", comment:"for login error"))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -56,7 +56,7 @@ class ProfileViewController: UIViewController{
|
||||
self.followButton.hidden = true
|
||||
|
||||
navigationController?.navigationBar.backgroundColor = UIColor.whiteColor()
|
||||
navigationController?.navigationBar.tintColor = UIColor.blackColor()
|
||||
navigationController?.navigationBar.tintColor = UIColor.whiteColor()
|
||||
|
||||
navigationController?.navigationBar.backItem?.hidesBackButton = false
|
||||
self.settingButton.hidden = true
|
||||
|
||||
Reference in New Issue
Block a user