Pregunta

Me estoy jugando con el método fql.multiQuery de la API de Facebook. Sólo estoy usando el href="http://developers.facebook.com/tools.php" rel="nofollow noreferrer"> consola de prueba API , y tratando de obtener una respuesta correcta, pero puede' t parecen saber exactamente lo que quiere.

Aquí está el texto que estoy entrando en el campo "consultas":

{"tags" : "select subject
from photo_tag
where subject != 601599551
and pid in (
 select pid
 from photo_tag
 where subject = 601599551
)
and subject in (
 select uid2
 from friend
 where uid1 = 601599551
)",
"foo" : "select uid from user where uid = 601599551"}

Todo lo que me dará un error de queries parameter: array expected..

También he probado casi todas las permutaciones que podía pensar que implica envolver los pares nombre / de la consulta en sus propias llaves, añadiendo entre paréntesis, la adición de un espacio en blanco, la eliminación de espacios en blanco en caso de que no quería un arreglo asociativo (para aquellos viendo los cambios, me acabo de enterar de estas cosas maravillosas ahora ... oy), todo en vano. ¿Hay algo dolorosamente obvio que me falta aquí, o tengo que hacer como Chuck Norris Jon Skeet y simplemente que haga mi voluntad?


Actualización: Una nota a cualquier persona encontrar esta pregunta ahora: La consola de prueba fql.multiquery parece no estar funcionando. Puede probar la consulta haciendo clic en la URL generada en la consola de prueba y de forma manual añadiendo el parámetro "consultas" en la cadena de consulta.

¿Fue útil?

Solución

Al parecer, no estaba demasiado lejos de la verdad con el comentario de Jon Skeet ... Parece que la consola de prueba es muy particular acerca de lo que los espacios en blanco se puede utilizar en:

http://bugs.developers.facebook.com/show_bug.cgi ? id = 6403

Esto es lo que acabé teniendo que ver con mi código:

{"tags":"select subject from photo_tag where subject != 601599551 and pid in (select pid from photo_tag where subject = 601599551 ) and subject in (select uid2 from friend where uid1 = 601599551 )","foo":"select uid from user where uid = 601599551"}

impresionante. Debido a que es legible.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top