URL de usuario de Facebook por id


82

Tengo una lista de ID de FB, ¿hay alguna forma canónica de construir su URL de FB sin una consulta de gráfico?

Por ejemplo, tengo los identificadores 3, 4, 5 y quiero la URL de Facebook para ellos sin usar la API gráfica y guardarlos


1
"sin usar la api gráfica": de todos modos, debe realizar solicitudes a Facebook. ¿Por qué no hacerlo correctamente (usando la api gráfica)?
zerkms

Respuestas:


130

ACTUALIZACIÓN 2: Facebook ya no da esta información. Hay un anuncio oficial para el cambio de comportamiento ( https://developers.facebook.com/blog/post/2018/04/19/facebook-login-changes-address-abuse/ ) pero ninguno para su alternativa.

Sí, solo use este enlace y agregue su ID al idparámetro:

https://facebook.com/profile.php?id=<UID>

Así por ejemplo:

https://facebook.com/profile.php?id=4

Lo redireccionará automáticamente a https://www.facebook.com/zuckCuál es el perfil de Mark Zuckerberg.

Si desea hacer esto para todos sus ID, puede hacerlo usando un bucle.

Si lo desea, puedo proporcionarle un fragmento.

ACTUALIZAR: Alternativamente, también puede hacer esto:

https://facebook.com/<UID>

Entonces eso sería: https://facebook.com/4 que redirigiría automáticamente a Zuck!


¿Y cómo recuperar la URL del resultado (redireccionamiento) automáticamente?
zerkms

1
Si el único propósito de la URL es simplemente redirigir a su usuario a su perfil o cualquier otro perfil, puede usar la URL anterior y fb enviará automáticamente a la persona al perfil apropiado. Pero si el propósito es obtener sus datos, entonces tendrá que usar la API gráfica.
Syed IR

No soy un OP, y OP preguntó cómo recuperar URL ;-)
zerkms

16
Ahora no funciona. ¿Está facebook.com/ <UID> desactivado?
ftb

2
https://facebook.com/<UID>usando esto y me sigue redirigiendo a mi página de inicio
Muhammad Nauman


23

La forma más fácil y correcta (y legal) es usar graph api.

Simplemente realice la solicitud: http://graph.facebook.com/4

que regresa

{
   "id": "4",
   "name": "Mark Zuckerberg",
   "first_name": "Mark",
   "last_name": "Zuckerberg",
   "link": "http://www.facebook.com/zuck",
   "username": "zuck",
   "gender": "male",
   "locale": "en_US"
}

y coge la linkllave.

También puede reducir el tráfico utilizando el fieldsparámetro: http://graph.facebook.com/4?fields=link para obtener solo lo que necesita:

{
   "link": "http://www.facebook.com/zuck",
   "id": "4"
}

9
Creo que no funciona sin access_tokeny https. Ejemplo:https://graph.facebook.com/4?access_token=YOUR_YOKEN
Yubaraj

No funcionó, IE11, pero las primeras URL recuperan el mismo perfil sin apodo, de ID
Danilo J. Bonsignore

esto no está desaprobado.
DeyaEldeen

3
Lo siento, funciona, solo tuve que agregar la fields=linkconsulta en la URLhttps://graph.facebook.com/<ID>?fields=link&access_token=<ACCESS_TOKEN>
Theo

2
a partir del 23 de junio, esto ya no funciona con o sin los campos = enlace
Yitzhak

1

La respuesta marcada parece obsoleta y no funcionará.

Facebook ahora solo ofrece una identificación única relacionada con la aplicación que no es igual a userId y profileUrl y el nombre de usuario saldrá vacío.

El hacer me?fields=id,name,linkstambién se deprecia después de la versión 2.4 de Graph

La única opción ahora es solicitar el permiso user_links desde su consola de desarrollador.

ingrese la descripción de la imagen aquí

y el pase en el alcance al iniciar sesión en Facebook

scope: ['user_link'] }

o haciendo una llamada a la API


1

A partir de ahora (NOV-2019) , graph.api V5.0

Graph API dice, consulte Graph API

Un enlace a la línea de tiempo de la persona. El enlace solo se resolverá si la persona que hace clic en el enlace está conectada a Facebook y es un amigo de la persona cuyo perfil se está viendo.

Doc


0

He recopilado información juntos:

Y, por último: no funciona sin una verificación adicional de permisos de Facebook :(

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.