Я довольно новичок здесь, но я развиваюсь быстро (версия 4) в течение приблизительно 3 месяцев.Итак, у меня есть проблема с реализацией аутентификации LinkedIn с использованием веб-представления, так как я не хочу использовать аутентификацию с необходимостью приложения LinkedIn - UX.
Я использовал следующие руководства для достижения этой цели, но мне удалось добраться до точки получения токена доступа только с ошибкой застрять в процессе входа в систему.Когда я отладил приложение, я смог получить токен доступа, но контроллер представления для веб-представления не отклоняет его.
Это руководства, которые я использовал:
Проблемы:
- Невозможно закрыть контроллер представления послеполучение токена доступа.
- Где взять необходимый «пользовательский токен», используя токен доступа, который есть у меня для пользовательской аутентификации Firebase.
Фрагмент кода для Выпуск # 1
// Initialize a NSURLSession object.
let session = URLSession(configuration: URLSessionConfiguration.default)
// Make the request.
let task: URLSessionDataTask = session.dataTask(with: request) { (data, response, error) -> Void in
// Get the HTTP status code of the request.
let statusCode = (response as! HTTPURLResponse).statusCode
if statusCode == 200 {
// Convert the received JSON data into a dictionary.
do {
let dataDictionary = try JSONSerialization.jsonObject(with: data!, options: []) as! [String : AnyObject]
let accessToken = dataDictionary["access_token"] as! String
UserDefaults.standard.set(accessToken, forKey: "LIAccessToken")
UserDefaults.standard.synchronize()
// Custom Firebase Auth
// Auth.auth().signIn(withCustomToken: UserDefaults.standard.string(forKey: "LIAccessToken")!) { (user, error) in
// if let error = error {
// print(error)
// return
// }
//
// }
DispatchQueue.main.async {
self.dismiss(animated: true, completion: nil)
}
} catch {
print("Could not convert JSON data into a dictionary.")
}
}
}
task.resume()
Заранее спасибо за любую помощь!Я надеюсь, что смогу помочь тем, у кого такие же проблемы.