API do gráfico do Facebook Connect - por que não consigo recuperar todos os detalhes do usuário?
-
26-09-2019 - |
Pergunta
Sinto que cada segunda pergunta que faço aqui está relacionada ao Facebook Connect - que diz muito sobre a API deles. Enfim, isso é política, eu discordo ..
Estou tentando retirar os detalhes do usuário da API do gráfico para uso no meu aplicativo (que é um site externo do FBML - JavaScript SDK para autenticação).
Eu solicitei as seguintes permissões do usuário: (usando a caixa de diálogo regular)
- publish_stream
- o email
Isso funciona e me permite postar na parede do usuário e pegue o e -mail da API do gráfico.
Mas quando eu faço uma solicitação HTTP para o seguinte URL:
https://graph.facebook.com/uid?access_token=oat (onde uid = o ID do usuário do usuário que estou tentando pegar detalhes e a aveia = o token OAuth que tenho).
Tudo o que volta ao JSON é o ID do usuário (que eu já tenho, já que estou colocando no URL) e o email.
Por que não posso obter coisas como o primeiro nome, sobrenome, localidade, etc?
Estou usando o URL errado? Meu token Oauth está errado?
Estou recebendo o token de Oauth daqui:
ATUALIZAR:
Parece que o problema é o meu token OAuth.
Porque quando vou aos documentos: http://developers.facebook.com/docs/api
E use o token de amostra de OAuth para o usuário que estou tentando recuperar, ele obtém todos os detalhes.
Alguém sabe o que há de errado com minha chamada de token de Oauth?
Solução
Então, eu estava usando o URL errado para a troca de Oauth. Precisava ser isso:https://graph.facebook.com/oauth/exchange_sessions?type=client_cred&client_id=myappid&client_secrete=myappSecret&sessions=UserSeshid
O URL que eu estava usando era de acordo com o DOCO, o acima que funciona não está em lugar algum.
Estou no ponto da FBC que não me importo mais com o Como as, se funcionar, seja grato por isso fazer isso e seguir em frente.
EDITAR:
Além disso, eu queria saber por que as chamadas da API do gráfico "parariam de" trabalhar sem motivo.
A resposta é que eu precisava para comparar a chave da sessão usada para obtivermos O token OAuth, com a chave da sessão atualmente nos cookies. Se eles são diferentes, eu precisava obter um novo token OAuth.
A chave de sessão usada para qualquer token OAuth faz parte do token OAuth real:
aaa|bbbb|cccc
Onde BBBB é a chave da sessão. Então, eu apenas comparo isso antes de fazer qualquer chamada de API gráfica.