Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
Ambos lados da revisão anterior Revisão anterior Próxima revisão | Revisão anterior | ||
sistemas:suap:programacao:webservices [2021/04/08 11:46] Edwilson de Sousa Carvalho |
sistemas:suap:programacao:webservices [2022/03/19 10:19] (atual) Edwilson de Sousa Carvalho |
||
---|---|---|---|
Linha 1: | Linha 1: | ||
+ | FIXME Esta documentação está incompleta. | ||
+ | |||
====== Solicitação de aplicação (usuário) ====== | ====== Solicitação de aplicação (usuário) ====== | ||
Linha 24: | Linha 26: | ||
< | < | ||
curl | curl | ||
+ | </ | ||
+ | |||
+ | ===== Exemplo em Python/ | ||
+ | |||
+ | < | ||
+ | class SuapOAuth2(BaseOAuth2): | ||
+ | name = ' | ||
+ | AUTHORIZATION_URL = ' | ||
+ | ACCESS_TOKEN_METHOD = ' | ||
+ | ACCESS_TOKEN_URL = ' | ||
+ | ID_KEY = ' | ||
+ | RESPONSE_TYPE = ' | ||
+ | REDIRECT_STATE = True | ||
+ | STATE_PARAMETER = True | ||
+ | USER_DATA_URL = ' | ||
+ | | ||
+ | |||
+ | def user_data(self, | ||
+ | return self.request( | ||
+ | url=self.USER_DATA_URL, | ||
+ | data={' | ||
+ | method=' | ||
+ | headers={' | ||
+ | ).json() | ||
+ | |||
+ | def get_user_details(self, | ||
+ | """ | ||
+ | Retorna um dicionário mapeando os fields do settings.AUTH_USER_MODEL. | ||
+ | você pode fazer aqui outras coisas, como salvar os dados do usuário | ||
+ | (`response`) em algum outro model. | ||
+ | """ | ||
+ | splitted_name = response[' | ||
+ | first_name, last_name = splitted_name[0], | ||
+ | if len(splitted_name) > 1: | ||
+ | last_name = splitted_name[-1] | ||
+ | return { | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | } | ||
</ | </ | ||