2017-05-26 80 views
0

你好,我想寫一個代碼(C#),這將給公共讀取權限的文件,這裏是代碼:谷歌驅動API讀取權限V3

private static Permission MakeFilePublic(string fileId, DriveService driveService) 
    { 
     var request = driveService.Permissions.List(fileId); 
     var res = driveService.Permissions.List(fileId).Execute(); 
     var hasReadPermission = res.Permissions.Any(p => p.Role == "reader"); 
     if (hasReadPermission==false) 
     { 
      var per = CreatePermission(driveService, fileId, "[email protected]", "anyone", "reader"); 
      return per; 

     } 
     return null; 
    } 

public static Permission CreatePermission(DriveService service, String fileId, String userEmailAddress, String type, String role) 
{ 
    Permission newPermission = new Permission(); 
    newPermission.EmailAddress = userEmailAddress; 
    newPermission.Type = type; 
    newPermission.Role = role; 
    try 
    { 
     var res = service.Permissions.Create(newPermission, fileId).Execute(); 
     return res; 
    } 
    catch (Exception e) 
    { 
     Console.WriteLine("An error occurred: " + e.Message); 
    } 
    return null; 
} 

我的問題是,我得到一個錯誤

指定的emailAddress對給定的權限類型無效或不適用。

我試圖輸入空的電子郵件,我的電子郵件,沒有工作。 任何人都知道如何解決它,並使Google文檔文件共享爲公開 謝謝!

回答

0

管理重做的響應嘗試使用此API部分中的documentation

我得到了200 OK響應從請求中刪除emailAddress參數。仔細檢查了這個文件,並公開分享了它。

+0

@ user3728728這是怎麼回事?從請求中刪除'emailAddress'後,您能否成功共享文件? –