第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

更改上傳工作表的權(quán)限

更改上傳工作表的權(quán)限

PHP
牧羊人nacy 2023-09-08 10:20:02
我遇到了一個(gè)問題,我有一張已使用 Sheets PHP API 上傳的工作表,現(xiàn)在我需要更改該工作表的權(quán)限。權(quán)限是在上傳時(shí)設(shè)置還是稍后更改對我來說并不重要。這是我的上傳代碼的樣子function createSheet(){    $client = getClient();    $service = new Google_Service_Sheets($client);    $spreadsheet = new Google_Service_Sheets_Spreadsheet([        'properties' => [            'title' => "test_sheet3",        ]    ]);    $spreadsheet = $service->spreadsheets->create($spreadsheet, [        'fields' => 'spreadsheetId'    ]);    printf("Spreadsheet ID: %s\n", $spreadsheet->spreadsheetId);    return $spreadsheet->spreadsheetID;}我一直在研究這個(gè)谷歌文檔,但每次我嘗試在屬性 JSON 中包含任何設(shè)置時(shí),例如:        'properties' => [            'title' => "test_sheet3",            'type' => 'group'        ]    ]);我收到錯(cuò)誤"Invalid JSON payload received. Unknown name \"type\" at 'spreadsheet.properties': Cannot find field."所以我不完全確定我的語法是否不正確,或者它們應(yīng)該添加到不是屬性 JSON 的不同 JSON 附件中。
查看完整描述

1 回答

?
弒天下

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超8個(gè)贊

我想提出以下修改建議。


修改要點(diǎn):

您可以使用Drive API中“權(quán)限:創(chuàng)建”的方法授予權(quán)限。這一點(diǎn)在你的問題中已經(jīng)提到過。在這種情況下,請求參數(shù)不能包含在Sheets API的“spreadsheets.create”方法中。請使用Drive API中的“權(quán)限:創(chuàng)建”方法請求。

當(dāng)以上幾點(diǎn)反映到您的腳本中時(shí),它會變成如下所示。


修改后的腳本:

$client = getClient();

$service = new Google_Service_Sheets($client);

$spreadsheet = new Google_Service_Sheets_Spreadsheet([

    'properties' => [

        'title' => "test_sheet3",

    ]

]);

$spreadsheet = $service->spreadsheets->create($spreadsheet, [

    'fields' => 'spreadsheetId'

]);

printf("Spreadsheet ID: %s\n", $spreadsheet->spreadsheetId);



// I added below script

$drive = new Google_Service_Drive($client);

$newPermission = new Google_Service_Drive_Permission();

$newPermission->setEmailAddress('###@gmail.com');

$newPermission->setType('group');

$newPermission->setRole('writer');

$res = $drive->permissions->create($spreadsheet->spreadsheetId, $newPermission);

// print_r($res);



return $spreadsheet->spreadsheetID;

筆記:

在本例中,作為測試,我使用了https://www.googleapis.com/auth/drive. 為此,請使用以下腳本。當(dāng)您修改范圍時(shí),請包含刷新令牌的文件并重新授權(quán)范圍。這樣,修改的范圍就可以反映到訪問令牌中。請小心這一點(diǎn)。


  $client->setScopes(array(Google_Service_Sheets::SPREADSHEETS, Google_Service_Drive::DRIVE));

當(dāng)您想使用時(shí)group,type請?jiān)O(shè)置電子郵件地址。


如果您想授予用戶權(quán)限,請修改$newPermission->setType('group');為$newPermission->setType('user');并請使用電子郵件地址。


查看完整回答
反對 回復(fù) 2023-09-08
  • 1 回答
  • 0 關(guān)注
  • 170 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號