API do gráfico do Facebook Connect - por que não consigo recuperar todos os detalhes do usuário?

StackOverflow https://stackoverflow.com/questions/3411700

  •  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:

https://graph.facebook.com/oauth/access_token?type=client_cred&client_id=myappid&client_secret=myAppSecret

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?

Foi útil?

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.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top