如何使用 OAuth 在 Parse iOS SDK 中对用户进行身份验证?
How to authenticate a user in Parse iOS SDK using OAuth?
Parse Server 提供 OAuth 身份验证。我如何使用 Parse Server 的预定义 OAuth 模块,例如Facebook,注册新用户或登录“_User”的现有用户 class?
Parse Server docs 提供了有关如何配置 OAuth 模块的示例。但是如何在 iOS 项目中使用它来登录或注册用户?
1,创建一个 class 从 NSObject 和 PFUserAuthenticationDelegate 扩展。
class AuthDelegate:NSObject, PFUserAuthenticationDelegate {
func restoreAuthenticationWithAuthData(authData: [String : String]?) -> Bool {
return true
}
}
2、注册这个认证代理
// parmeter 'forAuthType' is the name of file defined in
// https://github.com/parse-community/parse-server/blob/master/src/Adapters/Auth/index.js
// such as: google, github, linkedin ......
PFUser.registerAuthenticationDelegate(AuthDelegate(), forAuthType: "google")
3、使用PFUser.logInWithAuthTypeInBackground方法将用户信息存储到_User
// for google oauth, authData format will be
// ["id":"PUT_USER_ID_HERE","accesstoken":"PUT_TOKEN_HERE"]
PFUser.logInWithAuthType(inBackground: "google", authData:[.....])
4,你会看到在_User中创建了一条记录,只有objectId和authData
Parse Server 提供 OAuth 身份验证。我如何使用 Parse Server 的预定义 OAuth 模块,例如Facebook,注册新用户或登录“_User”的现有用户 class?
Parse Server docs 提供了有关如何配置 OAuth 模块的示例。但是如何在 iOS 项目中使用它来登录或注册用户?
1,创建一个 class 从 NSObject 和 PFUserAuthenticationDelegate 扩展。
class AuthDelegate:NSObject, PFUserAuthenticationDelegate {
func restoreAuthenticationWithAuthData(authData: [String : String]?) -> Bool {
return true
}
}
2、注册这个认证代理
// parmeter 'forAuthType' is the name of file defined in
// https://github.com/parse-community/parse-server/blob/master/src/Adapters/Auth/index.js
// such as: google, github, linkedin ......
PFUser.registerAuthenticationDelegate(AuthDelegate(), forAuthType: "google")
3、使用PFUser.logInWithAuthTypeInBackground方法将用户信息存储到_User
// for google oauth, authData format will be
// ["id":"PUT_USER_ID_HERE","accesstoken":"PUT_TOKEN_HERE"]
PFUser.logInWithAuthType(inBackground: "google", authData:[.....])
4,你会看到在_User中创建了一条记录,只有objectId和authData