내 드라이브에서 이미지를 실행하고 가져 오는 코드가 있습니다. 하지만이 코드를 실행할 때마다 문제가 발생합니다.PHP에서이 Google 드라이브 API 호출 함수의 문제점을 알 수 있습니까?
function listF() {
$result = array();
$tok = array();
$nextPageToken = NULL;
do {
try {
$parameters = array();
if ($nextPageToken) {
$parameters['pageToken'] = $nextPageToken;
$parameters['q'] = "mimeType='image/jpeg' or mimeType='image/png'";
}
$files = $this->service->files->listFiles($parameters);
$tok[] = $nextPageToken;
$result = array_merge($tok, $result, $files->getFiles());
$nextPageToken = $files->getNextPageToken();
} catch (Exception $e) {
print "An error occurred: " . $e->getMessage();
$nextPageToken = NULL;
}
} while ($nextPageToken);
return $result;
}
는이 오류를 받고 있어요 :
An error occurred: {
"error": {
"errors": [
{
"domain": "global",
"reason": "invalid",
"message": "Invalid Value",
"locationType": "parameter",
"location": "pageToken"
}
],
"code": 400,
"message": "Invalid Value"
}
}
은 정말 나에게 불법 보이지 않는다. 아마 당신은 버그를 찾을 수 있습니다. 감사합니다
' "location": "pageToken"'- 'pageToken'과 같은 소리가 잘못된 값을 가진 매개 변수였습니다. 해당 변수에 무엇이 들어 있는지 확인 했습니까? – CBroe
코드에서'$ nextPageToken = NULL;'을 정의하고 있습니다. 그러므로 당신의 조건'if ($ nextPageToken)'이 절대로 작동하지 않습니다. 수신 한 오류도 마찬가지입니다. 즉, 제공된 pageToken 값이 유효하지 않습니다. –
@Chinmayjain 의도적으로 null이므로 "$ nextPageToken = $ files-> getNextPageToken();"까지 nextPageToken이 없으므로 if 문으로 넘어 가지 않습니다. 아저씨. – chandlerbing