大佬教程收集整理的这篇文章主要介绍了Swift版本的iOS iOS SDK以及如何访问Response中的数据,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_403_7@导入FacebookCore
@H_403_7@
struct MyProfilerequest: GraphrequestProtocol { struct Response: GraphResponseProtocol { init(rawResponse: Any?) { // Decode JSON from rawResponsE into other properties here. } } var graPHPath = "/me" var parameters: [String : Any]? = ["fields": "id,name"] var accessToken = AccessToken.current var httpR_411_11845@ethod: GraphrequesthttpR_411_11845@ethod = .GET var apiVersion: GraphAPIVersion = .defaultVersion } let connection = GraphrequestConnection() connection.add(MyProfilerequest()) { response,result in switch result { case .success(let responsE): print("Custom Graph request Succeeded: \(responsE)") print("My facebook id is \(response.DictionaryValue?["id"])") print("My name is \(response.DictionaryValue?["name"])") case .Failed(let error): print("Custom Graph request Failed: \(error)") } } connection.start()@H_403_7@我在使用DictionaryValue可选说法/Users/jt/a-dev/tabfb/tabfb/LoginViewController.swift:72:31编译行时遇到错误:’MyProfilerequest.Response’类型的值没有成员’ DictionaryValue’.我如何使用它来访问用户名或ID?
@H_403_7@
struct Response: GraphResponseProtocol { init(rawResponse: Any?) { // Decode JSON from rawResponsE into other properties here. guard let response = rawResponse as? Dictionary<String,Any> else { return } if let name = response["name"],let id = response["id"] { print(Name) print(id) } } }@H_403_7@编辑:我重新设计了这样的代码,以使用.success(let responsE)中的值
@H_403_7@
struct Response: GraphResponseProtocol { var name: String? var id: String? var gender: String? var email: String? var profilePictureUrl: String? init(rawResponse: Any?) { // Decode JSON from rawResponsE into other properties here. guard let response = rawResponse as? Dictionary<String,Any> else { return } if let name = response["name"] as? String { self.name = name } if let id = response["id"] as? String { self.id = id } if let gender = response["gender"] as? String { self.gender = gender } if let email = response["email"] as? String { self.email = email } if let picture = response["picture"] as? Dictionary<String,Any> { if let data = picture["data"] as? Dictionary<String,Any> { if let url = data["url"] as? String { self.profilePictureUrl = url } } } } }@H_403_7@在成功案例中,您可以获得如下值:
@H_403_7@
let connection = GraphrequestConnection() connection.add(MyProfilerequest()) { response,result in switch result { case .success(let responsE): print("My facebook id is \(response.id!)") //Make sure to safely unwrap these :) print("My name is \(response.name!)") case .Failed(let error): print("Custom Graph request Failed: \(error)") } } connection.start()
以上是大佬教程为你收集整理的Swift版本的iOS iOS SDK以及如何访问Response中的数据全部内容,希望文章能够帮你解决Swift版本的iOS iOS SDK以及如何访问Response中的数据所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。