Nano Hash - криптовалюты, майнинг, программирование

iOS — авторизуйтесь в Google и отправьте токен на сервер для синхронизации

Я работаю с приложением iOS, которое используется для аутентификации с помощью механизма Google oAuth2. После успешной аутентификации я должен отправить код/токен на сервер для обработки синхронизации файлов, календарей и т. д.
Я могу успешно пройти аутентификацию в Google, используя их последнюю библиотеку/фреймворк.
Но после аутентификации, я получил токен/код, который я могу отправить на сервер. Но когда сервер использует код для аутентификации в Google, он не работает.
Есть ли какой-либо другой API для решения этой проблемы?


  • Вы решили эту проблему? 05.02.2015
  • Это слишком сложно. Мы обработали это со стороны сервера. 05.02.2015

Ответы:


1

Это очень широкая тема :) В некоторых случаях достаточно добавить данные токена в URL, как LinkedIn, например:

NSString *requestURLString = [@"https://api.linkedin.com/v1/people/~/shares?oauth2_access_token=" stringByAppendingString:@"LI_access_token"];

А в некоторых случаях необходимо добавить соответствующие поля в HTTP POST-запрос, например, для публикации в Facebook, например:

postString = [NSString stringWithFormat:@"\r\n--%@\r\n", boundary];
postString = [postString stringByAppendingString:@"Content-Disposition: form-data; name=\"access_token\"\r\n\r\n"];
postString = [postString stringByAppendingString:FBSession.activeSession.accessTokenData.accessToken];

Или необходимо добавить дополнительные поля в заголовок HTTP-запроса, как SoundCloud, например:

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestURL] cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData timeoutInterval:60.0f];
[request setHTTPMethod:@"GET"];
[request setValue:[@"OAuth " stringByAppendingString:self.accessToken] forHTTPHeaderField:@"Authorization"];

Попробуйте прояснить свой случай документацией по используемому API.

02.04.2014
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..