2016-06-05 2 views
1

내 프로젝트에서 python-social-auth를 사용하고 있습니다. 계정이 성공적으로 생성되었습니다. 그리고 어떻게 내가 스팀 사용자 아바타를 얻을 수 있고 그것을 데이터베이스에 저장할 수 있습니까?Python social auth steam avatar

나는이

def get_avatar(backend, strategy, details, response, 
    user=None, *args, **kwargs): 
    url = None 
    if backend.name == 'steam': 
    url = response['avatarfull'] 
    if url: 
    user.avatar = url 
    user.save() 

오류와 같은 파이프 라인을 사용하려고 - 'SuccessResponse'객체는 code 보면 더 속성 'avatarfull'

답변

0

이 없습니다,이 정보는 내부 player 키에 저장됩니다 details dict.

내가 당신 get_avatar 함수의 인수에서 오는, 그러나 파이썬 - 소셜 인증에서 제공하는 사용자 세부입니다 가정 곳에 확실하지 않다, 당신은과 같이 아바타에 액세스 할 수 있습니다

def get_avatar(backend, strategy, details, response, user=None, *args, **kwargs): 
    if backend.name == 'steam': 
     url = details['player']['avatarfull'] 
     if url: 
      user.avatar = url 
      user.save() 

당신은 아마 또한 다음과 같은 방법 SOCIAL_AUTH_PIPELINE의 한 부분이 있는지 확인해야합니다

'social.pipeline.social_auth.social_details', 
+0

예외 유형 : KeyError를, 예외 값 : \t '플레이어'. details = {} (비어 있음) – Madvan

+0

@ АртёмДемко 왜 그 안에 무엇이 있는지보기 위해'response'와'details'의 내용을 모두 출력하지 마십시오. 그것은 어딘가에있을 것입니다. – solarissmoke

+0

응답 \t Madvan

관련 문제