Ios 在swift中,如何使用他们的api而不是sdk设置facebook重定向uri
当我尝试使用Facebook的API(而不是SDK)登录Facebook时,我遇到了用代码交换令牌的问题,我得到的代码很好,但当我使用该代码调用API以获取令牌时,我会收到此错误消息“验证验证代码时出错。请确保您的重定向uri与您在OAuth对话框请求中使用的相同”,我在xcode中使用的重定向uri是(“fb”+appId+“://Authority”,这可以用来获取代码,但如何将其添加到Facebook应用设置中的有效OAuth重定向uri中 下面是我的函数,它使用传递给它的代码执行api调用,以获取交换中的令牌Ios 在swift中,如何使用他们的api而不是sdk设置facebook重定向uri,ios,swift,api,facebook,authentication,Ios,Swift,Api,Facebook,Authentication,当我尝试使用Facebook的API(而不是SDK)登录Facebook时,我遇到了用代码交换令牌的问题,我得到的代码很好,但当我使用该代码调用API以获取令牌时,我会收到此错误消息“验证验证代码时出错。请确保您的重定向uri与您在OAuth对话框请求中使用的相同”,我在xcode中使用的重定向uri是(“fb”+appId+“://Authority”,这可以用来获取代码,但如何将其添加到Facebook应用设置中的有效OAuth重定向uri中 下面是我的函数,它使用传递给它的代码执行api调
func sendCodeToServer(_ code: String) {
let parameters = "grant_type=authorization_code" + "&code=\(code)" + "&client_id=\(Constants.facebookAppId)" + "&client_secret=\(Constants.facebookSecret)" + "&redirect_uri=\(Constants.callbackScheme)://authorize"
guard let exchangeTokenUrl = URL(string: Constants.exchangeUrl) else { return }
var request = URLRequest(url: exchangeTokenUrl)
request.httpMethod = "POST"
request.addValue("application/json", forHTTPHeaderField: "Accept")
request.httpBody = parameters.data(using: String.Encoding.utf8)
let session = URLSession(configuration: URLSessionConfiguration.default)
let task = session.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else { return }
do {
let json = try JSONSerialization.jsonObject(with: data, options: .allowFragments)
print(json)
} catch {
print(error)
}
}
task.resume()
}