app-engine-patch i pyFacebook nie działa

Próbuję napisać aplikację na Facebooku za pomocą app-engine-patch i pyFacebook. Używam tylko przykładów dostarczonych z każdym narzędziem iz jakiegoś powodu nie zadziała.

Połączyłem te dwa elementy tak, jak opisano w zaakceptowanej odpowiedzi tutaj:Facebook, Django i Google App Engine

app-engine-patch wydaje się działać dobrze, ale kiedy próbuję użyć @ facebook.require_login (), otrzymuję to z dzienników GAE:

Exception in request:
Traceback (most recent call last):
  File "/base/data/home/apps/app-name/1.339079629847560090/common/zip-packages/django-1.1.zip/django/core/handlers/base.py", line 92, in get_response
    response = callback(request, *callback_args, **callback_kwargs)
  File "/base/data/home/apps/app-name/1.339079629847560090/facebook/djangofb/__init__.py", line 87, in newview
    if not fb.check_session(request):
  File "/base/data/home/apps/app-name/1.339079629847560090/facebook/__init__.py", line 1293, in check_session
    self.session_key_expires = int(params['expires'])
ValueError: invalid literal for int() with base 10: 'None'

Dzieje się tak bez względu na to, który widok ozdobię @ facebook.require_login ()

Używam najnowszego z obu projektów i nie mam pojęcia, dlaczego to nie zadziała.

Wielkie dzięki za twój czas.

AKTUALIZACJA: Zrobiłem krótką poprawkę dla pyFacebook, ale właśnie zapomniałem umieścić go z powrotem w wątku.

Teraz także jako odpowiedź, ponieważ wydaje się, że to jedyny sposób.

Jeśli zmienisz z tej linii linię 1292+ na facebooku / __ init__.py:

    if params.get('expires'):
        self.session_key_expires = int(params['expires'])

Do tego:

    if params.get('expires'):
        if params['expires'] == 'None':
            params['expires'] = 0   
        self.session_key_expires = int(params['expires'])

To zadziała, ale to hack i może można to zrobić bardziej elegancko, ale działa. W tym wątku wskaż programistom pyFacebook, może będą mieli lepsze rozwiązanie.

questionAnswers(2)

yourAnswerToTheQuestion