簡體   English   中英

Google雲端硬盤API-設置權限時崩潰

[英]Google Drive API - Crash when setting permissions

我正在使用適用於php的Google Drive API,並嘗試將文件復制到特定文件夾並為其授予權限。

當我嘗試使用調試器毫無問題地執行它時,權限設置為良好的用戶。 但是,當我嘗試“正常”執行它時,結果將永遠不一樣,並且在設置權限時似乎崩潰(或超時)。

這是我的代碼:

function deleteFilePermissions($fileId)
{
    global $driveService;

    $results = $driveService->permissions->listPermissions($fileId, array(
        'fields' => 'nextPageToken, permissions(id, role, emailAddress)'
    ));

    foreach ($results->getPermissions() as $permission) {
        if ($permission->getRole() != 'owner'
        && $permission->getEmailAddress() != 'noreply@opportunities-fo-1541429464609.iam.gserviceaccount.com')
            $driveService->permissions->delete($fileId, $permission->getId());
    }
}

function changeFileRights($fileId, $rights, $emailAddresses)
{
    global $driveService;

    deleteFilePermissions($fileId);
    foreach ($rights as $key => $right) {
        $userPermission = new Google_Service_Drive_Permission(array(
            'type' => 'user',
            'role' => $right,
            'emailAddress' => $emailAddresses[$key]
        ));
        $request = $driveService->permissions->create($fileId, $userPermission, array(
            'fields' => 'id',
            'sendNotificationEmail' => false
        ));
    }
}

這是函數調用:

changeFileRights($fileId, ['reader', 'writer'], ['email1@gmail.com', 'email2@gmail.com']);

好的,我設法通過增加php.ini的最大執行限制來做到這一點。 執行時間太長,這就是為什么每次都不能給我相同的結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM