Hay How can I construct a link to view a message on facebook.com if I have the message id pregunta, pero no ha sido respondida. ¿Qué pasa si obtengo el id del hilo usando el punto final API/me/inbox API y necesito redirigir al usuario al Facebook mismo que muestra este hilo? ¿Cómo construyo la URL? Parece que hay URL como http://www.facebook.com/messages/?action=read&tid=id.143666952390138 donde id de la cadena es el número al final. Pero también hay algunas URL más desconocidas, como http://www.facebook.com/messages/?action=read&tid=27726d81656e4c07ae5654116cccb724, donde la regla anterior no funciona. ¿Hay alguna solución para obtener URL de subprocesos mediante Graph API o FQL?¿Cómo obtener la URL de la secuencia de mensajes conociendo la id de la secuencia?
5
A
Respuesta
8
Si la identificación que tiene es un objeto de cadena (probablemente un guid), esto es de la estructura de almacenamiento del sistema de mensajes más viejo de Facebook. Ahora se han actualizado a una nueva estructura de almacenamiento que requiere los antiguos para ser migrado a la nueva
Así que tienes un cheque bastante fácil:
Si ID del tema es un largo (Int64/Bigint), entonces usted tiene un nuevo hilo y puede utilizar http://www.facebook.com/messages/?action=read&tid=id.THREAD_ID
Si ID del tema es una cadena, entonces usted tiene un hilo mayor y puede utilizar
http://www.facebook.com/messages/?action=read&tid=THREAD_ID
muchos langu programación las edades tienen su propia forma de verificar el tipo de valor.
var threadId = (string)data.thread_id;
var longVal = 0L;
var isLong = Int64.TryParse(threadId, out longVal);
var threadUrl = (isLong) ?
"http://www.facebook.com/messages/?action=read&tid=id." + threadId :
"http://www.facebook.com/messages/?action=read&tid=" + threadId;
Cuestiones relacionadas
- 1. pg_dump ignorando la secuencia de la tabla?
- 2. Cómo conectar la ranura PyQt de la secuencia de fondo a la secuencia de comandos
- 3. [PersistenceException: Error al obtener la secuencia nextval]
- 4. Dando a la etiqueta de secuencia de comandos una ID
- 5. ¿Convertir la secuencia de números a ID de aspecto aleatorio?
- 6. Obtener el #id de la URL actual
- 7. Enchufes en C#: ¿Cómo obtener la secuencia de respuesta?
- 8. Obtener la longitud de la secuencia en EL
- 9. URL de la secuencia de comandos actual en JavaScript
- 10. uso de hibernación de la secuencia de PostgreSQL no afecta a la tabla de secuencia
- 11. Verifica la longitud de la secuencia binaria?
- 12. Obtener enlace (url) a un evento de calendario en la secuencia de comandos de google apps
- 13. Averigüe la pestaña de página URL desde la ID de página y la ID de aplicación
- 14. Pasando el valor de la secuencia de comandos PHP a la secuencia de comandos de Python
- 15. ¿Cómo detectar el final de la secuencia?
- 16. Cómo secuenciar la secuencia de animación SVG?
- 17. La secuencia no contiene elementos?
- 18. obtener una longitud de contenido de la secuencia
- 19. longitud de la secuencia de Clojure
- 20. cómo obtener el Id de la URL mientras usa node.js
- 21. Lea la secuencia dos veces
- 22. Obtener contenido dentro de la secuencia de comandos como texto
- 23. accurev convertir del número de la secuencia al nombre de la secuencia
- 24. Convierta la transmisión de video rtsp a la secuencia http
- 25. La secuencia de comandos PHP no puede obtenerse desde la secuencia de comandos de Python
- 26. obtener la secuencia de un objeto socket en C#
- 27. Anular la secuencia de pulsaciones de teclas?
- 28. Interpolación de la Secuencia de Punto
- 29. F # array_chunk para la secuencia
- 30. Cómo obtener la ruta de ejecución de la secuencia de comandos congelada
Sería muy bueno si todo estaba este sencillo, pero al solicitar/Me/bandeja de entrada de API de gráficos para la 27726d81656e4c07ae5654116cccb724 (como el ID debe ser adecuadamente facebook abierta la página de rosca) Rosca consigo una identificación de 64 bits " ":" 1956133107397 ". Y si utilizo el id de/me/inbox (el de 64 bits) para construir la url de la página del hilo obtengo el error "No se encontró el mensaje". No puedo recuperar el id. Hexadecimal más largo de facebook usando Graph API. – vian
No sé qué hizo con los valores, pero todo lo que intenté siempre, siempre, siempre funcionó usando el código que publiqué anteriormente. Por supuesto, debe tener un ** token de acceso de USUARIO válido con permisos de 'read_mailbox' **. Ver: https://developers.facebook.com/docs/reference/api/permissions – DMCS
Tengo un permiso read_mailbox y lo comprobé funcionando, pero por alguna razón puedo obtener el id. Largo de cadena hexadecimal solo cuando estoy usando/conexión me/threads, cuando uso/me/inbox recibo una identificación que no funciona. Usar/me/threads sería más fácil si no requiriera que el usuario sea el desarrollador de la aplicación. – vian