Foros del Web » Programando para Internet » Python »

Twitter no funciona en django socialauth

Estas en el tema de Twitter no funciona en django socialauth en el foro de Python en Foros del Web. Estoy usando django [URL="https://github.com/omab/django-social-auth"]socialauth [/URL]para poder tener un login sin tener que estar registrandose , de django socialauth solo me interesan estos servicios google , ...
  #1 (permalink)  
Antiguo 18/01/2012, 10:21
 
Fecha de Ingreso: diciembre-2011
Ubicación: Cancun
Mensajes: 47
Antigüedad: 12 años, 3 meses
Puntos: 1
Exclamación Twitter no funciona en django socialauth

Estoy usando django [URL="https://github.com/omab/django-social-auth"]socialauth [/URL]para poder tener un login sin tener que estar registrandose , de django socialauth solo me interesan estos servicios google , facebook , twitter .

Estoy Usando el [URL="https://github.com/omab/django-social-auth/tree/master/example"]Ejemplo[/URL] que viene en este paquete lo unico que he cambiado son las claves hasta el momento tengo las claves de twitter , no tengo las de facebook . Estos son los servicios que me funcionan del ejemplo.

Login using OAuth from:

Twitter --->Tengo las claves y no funcionan
Google-Oauth --->No Tengo las claves
Linkedin --->No Tengo las claves no lo necesito

Login using OAuth2 from:

Facebook --->No Tengo las claves
Google-Oauth2 --->Tengo las claves

Login using OpenId from:

Google --->Funciona Perfecto y no necesita claves
Yahoo --->Funciona Perfecto y no necesita claves

Todo esto lo estoy realizando de manera local no lo tengo en ningun hosting , ya he realizado syncdb para que funcionara pero nada este es error que me manda :



Este es mi settings.py :
Código:
from os.path import abspath, dirname, basename, join

try:
    import social_auth
except ImportError:
    import sys
    sys.path.insert(0, "..")

DEBUG = True
TEMPLATE_DEBUG = DEBUG

ROOT_PATH = abspath(dirname(__file__))
PROJECT_NAME = basename(ROOT_PATH)

ADMINS = (
    # ('Your Name', '[email protected]'),
)
MANAGERS = ADMINS

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': 'test.db',
    }
}

TIME_ZONE = 'America/Chicago'
LANGUAGE_CODE = 'en-us'
SITE_ID = 1

USE_I18N = True
USE_L10N = True

MEDIA_ROOT = ''
ADMIN_MEDIA_PREFIX = '/admin-media/'
MEDIA_URL = ''

SECRET_KEY = 't2eo^kd%k+-##ml3@_x__$j0(ps4p0q6eg*c4ttp9d2n(t!iol'

TEMPLATE_LOADERS = (
    'django.template.loaders.filesystem.Loader',
    'django.template.loaders.app_directories.Loader',
)

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
)

ROOT_URLCONF = 'example.urls'

TEMPLATE_DIRS = (
    join(ROOT_PATH, 'templates')
)

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.admin',
    'social_auth',
    'app',
)
 

AUTHENTICATION_BACKENDS = (
    'social_auth.backends.twitter.TwitterBackend',
    'social_auth.backends.facebook.FacebookBackend',
    'social_auth.backends.google.GoogleOAuthBackend',
    'social_auth.backends.google.GoogleOAuth2Backend',
    'social_auth.backends.google.GoogleBackend',
    'social_auth.backends.yahoo.YahooBackend',
    'social_auth.backends.contrib.linkedin.LinkedinBackend',
    'social_auth.backends.contrib.flickr.FlickrBackend',
    'social_auth.backends.OpenIDBackend',
    'social_auth.backends.contrib.livejournal.LiveJournalBackend',
    'django.contrib.auth.backends.ModelBackend',
)


TEMPLATE_CONTEXT_PROCESSORS = (
    'django.contrib.auth.context_processors.auth',
    'django.core.context_processors.debug',
    'django.core.context_processors.i18n',
    'django.core.context_processors.media',
    'django.contrib.messages.context_processors.messages',
    'social_auth.context_processors.social_auth_by_type_backends',
)

LOGIN_REDIRECT_URL = '/'

try:
    from local_settings import *
except:
    pass
Este es mi local_settings.py originalmente viene como local_settings.py.template , pero lo renombre.

Código:
TWITTER_CONSUMER_KEY              = 'Mklcd2J4M3R19i53mF40g'
TWITTER_CONSUMER_SECRET           = 'MTwCGfeprzLavgzsuDCr5CNYqnonafnTmtxPZQez0'
FACEBOOK_APP_ID                   = ''
FACEBOOK_API_SECRET               = ''
LINKEDIN_CONSUMER_KEY             = ''
LINKEDIN_CONSUMER_SECRET          = ''
ORKUT_CONSUMER_KEY                = ''
ORKUT_CONSUMER_SECRET             = ''
GOOGLE_OAUTH2_CLIENT_ID           = ''
GOOGLE_OAUTH2_CLIENT_SECRET       = ''
SOCIAL_AUTH_CREATE_USERS          = True
SOCIAL_AUTH_FORCE_RANDOM_USERNAME = False
SOCIAL_AUTH_DEFAULT_USERNAME      = 'socialauth_user'
SOCIAL_AUTH_COMPLETE_URL_NAME     = 'socialauth_complete'
LOGIN_ERROR_URL                   = '/login/error/'
#SOCIAL_AUTH_USER_MODEL            = 'app.CustomUser'
SOCIAL_AUTH_ERROR_KEY             = 'socialauth_error'
GITHUB_APP_ID                     = ''
GITHUB_API_SECRET                 = ''
FOURSQUARE_CONSUMER_KEY           = ''
FOURSQUARE_CONSUMER_SECRET        = ''
El error que tengo le paso a otra persona pero he realizado lo que dice pero nada no funciona , la verdad no se como contactarlo para preguntar como lo resolvio [URL="http://stackoverflow.com/questions/6246970/django-social-auth-incorrect-authentication-service"]este es el link[/URL] ya llevo varios dias intentando resolverlo pero no me funciona

Última edición por ioscar; 18/01/2012 a las 21:09
  #2 (permalink)  
Antiguo 19/01/2012, 19:34
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Twitter no funciona en django socialauth

Bueno, vamos por partes.
No hay un stacktrace, por lo que no es una excepción de Django.

En la página que vinculás, el código que pegan muestra que el error es tirado por el módulo cuando no puede crear un backend. Veo que habilitaste todos los backends aunque te faltan algunas cosas, ¿será ese el problema? Yo probaría dos cosas:

1.- ver qué hace exactamente la función get_backend
2.- deshabilitar aquellos backends que no tengas completamente configurados.


saludos.
  #3 (permalink)  
Antiguo 20/01/2012, 09:35
 
Fecha de Ingreso: diciembre-2011
Ubicación: Cancun
Mensajes: 47
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: Twitter no funciona en django socialauth

He deshabilitado los backends que no utilizo.

No se donde viste la función get_backend .

La verdad soy nuevo en django y se me esta complicando esta parte , te digo que solo estoy probando el ejemplo que viene en el archivo django socialauth de omab no he creado nada , solo agregue mis claves de twitter.
  #4 (permalink)  
Antiguo 20/01/2012, 12:58
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Twitter no funciona en django socialauth

get_backend aparece en el código del módulo, en la página que vinculaste se ve que el error se da cuando falla una llamada a esa función.

Etiquetas: django
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:48.