2015-08-24 3 views
0

У меня проблема с ошибкой 209: Недействительный токен сеанса. Я просто открываю приложение, как в «Руководстве по анализу», и если я удалю сеанс в веб-апплете, я получу ошибку 209. Я хочу поймать эту ошибку и обработать ее, но я не знаю, где происходит ошибка. Можно ли поймать все ошибки Parse или есть способ выяснить, где происходит ошибка?iOS Swift: проанализировать недопустимую ошибку токена сеанса

Вот мой код:

//Parse setup 
    Parse.enableLocalDatastore() 
    Parse.setApplicationId("xxx", 
     clientKey: "xxx") 
    PFAnalytics.trackAppOpenedWithLaunchOptions(launchOptions) 

    PFUser.enableRevocableSessionInBackgroundWithBlock({(error: NSError?) in 

     //enable the session errors 
     if (error != nil) 
     { 
      NSLog(error!.localizedDescription) 
     } 
    }) 
//get current user 
    let user: PFUser = PFUser.currentUser() 

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

Благодарим за помощь!

ответ

0

Я нашел проблему, опросив каждую строчку! Каждый контакт с сервером Разбор приводит к ошибке 209. Первый контакт с сервером является следующая строка:

PFAnalytics.trackAppOpenedWithLaunchOptions(launchOptions) 

Существует асинхронный команда для этого действия, так что я узнал, есть первая ошибка. Неважно, как вы обрабатываете возникающую ошибку, которую он регистрирует каждый раз без команды. Спасибо за ваши ответы!

+0

Итак, как вы это исправите? – Supertecnoboff

+0

Извините, я не видел сообщение. Я переписал код дырки и только что проверил, действует ли токен после первого контакта с сервером. Если это не удалось, вы знаете, что токен недействителен из-за возвращаемой ошибки. Я думаю, что это новое в новой версии Parse! –

0

Ну, я в настоящее время не знаю, есть ли его проблема, но, пожалуйста, выполните запрос пользователя в закрытии, потому что ваш «BackgroundBlock» может быть возвращен с помощью токена после того, как вы попросите своего пользователя ... Поэтому, пожалуйста, попробуйте это

//Parse setup 
    Parse.enableLocalDatastore() 
    Parse.setApplicationId("xxx", 
     clientKey: "xxx") 
    PFAnalytics.trackAppOpenedWithLaunchOptions(launchOptions) 

    PFUser.enableRevocableSessionInBackgroundWithBlock({(error: NSError?) in 

     //enable the session errors 
     if (error != nil) 
     { 
      NSLog(error!.localizedDescription) 
     } else { 
      //get current user 
      let user: PFUser = PFUser.currentUser() 
     } 
    }) 
+0

Благодарим вас за ответ. Ошибка 209 не возникает в этой части исходного кода. Обработчик завершения этого метода заканчивается без ошибки, и ошибка 209 даже возникает, если я прокомментирую функцию «PFUser.currentUser()». Я не знаю, какая часть программы вызывает ошибку. –

+0

Хорошо, я не мог решить эту проблему без какой-либо возможности отладки, не могли бы вы прокомментировать другие части кода, чтобы узнать, где это происходит, и опубликовать его здесь как редактирование? –

Смежные вопросы