2013-10-30 1 views
0

..FQL 다중 쿼리는 아직도 멀티 쿼리 구문에 대해 매우 확실하지 않다

나는 약간의 사진 데이터를 얻을 싶어 나는 그래서 사진의 장소 정보를 얻을 수있는 곳으로 가입 할 ..

는 여기 그것은 나를 반환이

https://graph.facebook.com/fql?q={"query1":"SELECT+object_id,+place_id,+caption,+images,+owner,+created+FROM+photo+WHERE+owner=[user_id]+AND+created>=1383158944","query2":"SELECT+name,+latitude,+longitude+FROM+place+WHERE+page_id+IN+(SELECT+place_id+FROM+#query1+)"}&access_token=my_token 

처럼 될 것입니다 HTTP 요청에서 내 코드

query1 = "SELECT+object_id+,+place_id+,+caption+,+images+,+owner+,+created+FROM+photo+" \ 
     "WHERE+owner=%s+AND+created>=%s" % (update_user, update_ti 
query2 = "SELECT+name+,+latitude+,+longitude+FROM+place+" \ 
     "WHERE+page_id+IN+(+SELECT+place_id+FROM+#query1+)" 
update_url = "https://graph.facebook.com/fql?q={'query1':'%s', 'query2':'%s'}" \ 
      "&access_token=%s" % (query1, query2, client.token) 

의 OAuthExcep 기 : (작업)

error: { 
    message: "(#601) Parser error: unexpected '{' at position 0.", 
    type: "OAuthException", 
    code: 601 
} 

업데이트 코드 :

query1 = "SELECT object_id, place_id, caption, images, owner, created FROM photo " \ 
     "WHERE owner=%s AND created>=%s" % (update_user, update_time) 
query2 = "SELECT name, latitude, longitude FROM place " \ 
     "WHERE page_id IN (SELECT place_id FROM #query1)" 
query_params = { 
    'q': '{"query1":"%s", "query2":"%s"}' % (query1, query2), 
    'access_token': client.token 
} 
update_url = "https://graph.facebook.com/fql?%s" % urllib.urlencode(query_params) 

답변