2016-09-08 13 views
0

Google Datastore Runquery 아래 등 GQL 쿼리를 수행하는 HTTP 클라이언트를 제공합니다GQL 쿼리

POST https://datastore.googleapis.com/v1/projects/my-project-id:runQuery?key={YOUR_API_KEY} 

{ 
"gqlQuery": { 
    "queryString": "SELECT * FROM User WHERE email = '[email protected]'" 
} 
} 

하지만이 같은 오류 응답 점점 오전 : 간단한과 완벽하게

{ 
    "error": { 
    "code": 400, 
    "message": "Disallowed literal: '[email protected]'.", 
    "status": "INVALID_ARGUMENT" 
    } 
} 

그러나, Google Cloud Datastore Http Client 작업을 'Select * from User'과 같은 검색어

그렇다면이 GQL 쿼리를 Datastore Http 클라이언트와 함께 어떻게 실행할 수 있습니까?

답변

2

allowLiterals 매개 변수를 true로 설정하거나 매개 변수 (이름이 있거나 위치가 지정된)에 대해 바인딩을 사용해야합니다. 당신이, 당신이

{ 
"gqlQuery": { 
    "queryString": "SELECT * FROM User WHERE email = '[email protected]'" 
    "allowLiterals": true 
} 
} 
에 요청을 변경해야합니다 쿼리에 리터럴 (상수 값)을 허용 할 경우에 따라서

https://cloud.google.com/datastore/reference/rest/v1/projects/runQuery#GqlQuery

:

아래의 설명서를 참조하십시오