2016-04-14 16 views
1

'u yükseltiyor Uygulamamı PythonAnywhere üzerinde dağıtmaya çalışıyorum ancak Flask-Stormpath Facebook oturumunu ayarlayamıyorum.PythonAnywhere üzerinde Flask-Stormpath kullanarak Facebook ile oturum açmak JSONDecodeError

E-posta tabanlı giriş ve Google bağlantısı iyi çalışıyor, ancak Facebook oturum açma çalışmıyor. Facebook uygulamasını doğru uygulama URL'sine güncelledim ve Facebook bağlantısının localhost üzerinde çalıştığı doğrulandı.

# Stormpath app configuration 
app.config['STORMPATH_API_KEY_FILE'] = '/home/btpraasta/btp_raasta/stormpath/apiKey.properties' 
app.config['STORMPATH_API_KEY_FILE'] = 'stormpath/apiKey.properties' 
app.config['STORMPATH_APPLICATION'] = 'Raasta' 
app.config['STORMPATH_REDIRECT_URL'] = '/redirecting' 
app.config['STORMPATH_REGISTRATION_REDIRECT_URL'] = '/verifyEmail' 
app.config['STORMPATH_REGISTRATION_TEMPLATE'] = 'register.html' 
app.config['STORMPATH_LOGIN_TEMPLATE'] = 'login.html' 
app.config['STORMPATH_FORGOT_PASSWORD_TEMPLATE'] = 'forgot.html' 
app.config['STORMPATH_ENABLE_MIDDLE_NAME'] = False 
app.config['STORMPATH_ENABLE_USERNAME'] = True 
app.config['STORMPATH_REQUIRE_USERNAME'] = True 
app.config['STORMPATH_ENABLE_FORGOT_PASSWORD'] = True 
app.config['STORMPATH_ENABLE_FACEBOOK'] = True 
app.config['STORMPATH_ENABLE_GOOGLE'] = True 
app.config['STORMPATH_SOCIAL'] = { 
    'FACEBOOK': { 
     'app_id': 'xxxxx', 
     'app_secret': 'xxxxx', 
    }, 
    'GOOGLE': { 
     'client_id': 'xxxxx', 
     'client_secret': 'xxxxxx', 
    } 
} 

client_id ve client_secret saklı olan -: Burada

2016-04-14 18:08:07,121 :Exception on /facebook [GET] 
Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1687, in wsgi_app 
    response = self.full_dispatch_request() 
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1360, in full_dispatch_request 
    rv = self.handle_user_exception(e) 
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1358, in full_dispatch_request 
    rv = self.dispatch_request() 
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1344, in dispatch_request 
    return self.view_functions[rule.endpoint](**req.view_args) 
    File "/home/btpraasta/.local/lib/python2.7/site-packages/flask_stormpath/views.py", line 265, in facebook_login 
    current_app.config['STORMPATH_SOCIAL']['FACEBOOK']['app_secret'], 
    File "/usr/local/lib/python2.7/dist-packages/facebook.py", line 497, in get_user_from_cookie 
    app_id, app_secret) 
    File "/usr/local/lib/python2.7/dist-packages/facebook.py", line 581, in get_access_token_from_code 
    response = json.loads(response) 
    File "/usr/local/lib/python2.7/dist-packages/simplejson/__init__.py", line 488, in loads 
    return _default_decoder.decode(s) 
    File "/usr/local/lib/python2.7/dist-packages/simplejson/decoder.py", line 370, in decode 
    obj, end = self.raw_decode(s) 
    File "/usr/local/lib/python2.7/dist-packages/simplejson/decoder.py", line 389, in raw_decode 
    return self.scan_once(s, idx=_w(s, idx).end()) 
JSONDecodeError: Expecting value: line 1 column 1 (char 0) 

kullanıyorum StormPath için yapılandırma vardır. Aynı yapılandırma, localhost üzerinde çalışır.

+1

O hata gönderilen bazı verilerin benziyor geçerli değil. Bu kütüphanenin yazarıyım - yapılandırma verilerinizi her şey için de ekleyebilir misiniz? – rdegges

+0

@rdegges Yapılandırma ayrıntılarını ekledim. PythonAnywhere, ücretsiz hesapların web'e bağlanmasına izin vermek için bir proxy kullanır. Sebebi olabilecek herhangi bir ihtimal var mı? –

+0

PythonAnywhere devri burada - vekil hakkında haklısınız. Kodun proxy'ye doğru şekilde bağlanması olabilir, ancak erişmeye çalıştığınız site, ücretsiz hesapların erişebileceği sitelerin beyaz listesinden değildir. Herkese açık bir API ise, muhtemelen ekleyebiliriz - siteye API uç noktası ve dokümanlar için bir bağlantı içeren bir geri bildirim iletisi gönderin. –

cevap

1

Hata, proxy desteğine sahip olmayan Facebook-SDK sürüm 0.4 nedeniyle oldu. Bir işaret kaldırdı ve şimdi Flask-Stormpath aynı destekleyen Facebook-SDK sürüm 1.0 kullanır.

hala aynı sorunun Şişesi-Stormpath güncellemek yüz ise: -

pip install --upgrade flask-stormpath