Questo documento illustra come eseguire la migrazione del codice utilizzando l'API Drive per le autorizzazioni. la gestione dei contenuti all'API Looker Studio. Per gli endpoint comuni dell'API Drive, mostra il codice dell'API Looker Studio corrispondente.
File
Per gli endpoint dei file dell'API Drive, l'API Looker Studio ha solo un equivalente
endpoint per l'endpoint Files: list
.
Elenco
API | Metodo | Endpoint |
---|---|---|
Drive | POST |
/drive/v3/files |
Looker Studio | GET |
/v1/assets:search |
Confronto:
Drive
const oAuthToken = '123' // This should be replaced with a valid OAuth token.
fetch(`https://www.googleapis.com/drive/v3/files`, {
headers: {
Authorization: `Bearer ${oAuthToken}`
},
method: "POST",
})
Looker Studio
const oAuthToken = '123' // This should be replaced with a valid OAuth token.
fetch(`https://datastudio.googleapis.com/v1/assets:search?assetTypes={ASSET_TYPE}`, {
headers: {
Authorization: `Bearer ${oAuthToken}`
}
})
Scopri gli asset di ricerca.
Autorizzazioni
Crea, elimina e ricevi
API | Metodo | Endpoint |
---|---|---|
Drive | POST |
/drive/v3/files/fileId/permissions |
Drive | DELETE |
/drive/v3/files/fileId/permissions/permissionId |
Drive | GET |
/drive/v3/files/fileId/permissions/permissionId |
Non esistono endpoint corrispondenti nell'API Looker Studio per la gestione
più oggetti Permissions
. Esiste un solo oggetto autorizzazioni per
dell'asset di Looker Studio ed esiste sempre.
- Per rimuovere qualcuno da un asset, consulta la sezione Revocare tutte le autorizzazioni.
- Per aggiungere qualcuno a una risorsa, consulta Aggiungere membri.
- Per visualizzare un oggetto autorizzazioni per un asset, consulta Ottenere le autorizzazioni
Elenco
Non esiste una corrispondenza 1:1 tra Drive e Looker Studio, ma gli endpoint raggiungere obiettivi simili. La differenza principale è che un file di Drive può avere molti di autorizzazioni e Looker Studio ne ha esattamente uno.
API | Metodo | Endpoint |
---|---|---|
Drive | GET |
/drive/v3/files/fileId/permissions |
Looker Studio | GET |
/v1/assets/assetId/permissions |
Confronto:
Drive
Il codice seguente elenca tutti gli oggetti delle autorizzazioni per l'API Drive. A seconda del codice, puoi chiamare questo metodo più volte utilizzando l'impaginazione (come illustrato) per assicurarti di poter visualizzare tutte le autorizzazioni impostate un file.
const fileId = '123'; // This should be replaced with a valid Drive ID.
const oAuthToken = '123'; // This should be replaced with a valid OAuth token.
let nextPageToken = undefined;
let permissions = [];
do {
const permissionsData = await fetch(`https://www.googleapis.com/drive/v3/files/${fileId}/permissions`, {
headers: {
Authorization: `Bearer ${oAuthToken}`
}
});
nextPageToken = permissionsData.nextPageToken;
permissions = permissions.concat(permissionsData.permissions)
} while (nextPageToken !== undefined);
Looker Studio
Poiché esiste un solo oggetto autorizzazione per un asset di Looker Studio, devono tenere conto dell'impaginazione.
const oAuthToken = '123' // This should be replaced with a valid OAuth token.
const assetId = '123' // This should be replaced with a valid asset ID.
fetch(`https://datastudio.googleapis.com/v1/assets/{ASSET_ID}/permissions`, {
headers: {
Authorization: `Bearer ${oAuthToken}`
}
}
Vedi Ottenere le autorizzazioni.
Aggiorna
Per l'aggiornamento delle autorizzazioni, le API Looker Studio e Drive presentano
funzionalità. La differenza principale è che non puoi impostare expirationTime
su un
Autorizzazione Looker Studio.
API | Metodo | Endpoint |
---|---|---|
Drive | PATCH |
/drive/v3/files/fileId/permissions/permissionId |
Looker Studio | PATCH |
/v1/assets/assetId/permissions |
Confronto:
Drive
const fileId = '123'; // This should be replaced with a valid Drive ID.
const oAuthToken = '123'; // This should be replaced with a valid OAuth token.
const newPermissionsObject = {
expirationTime: '...',
role: 'owner', // Or any other option
}
fetch(`https://www.googleapis.com/drive/v3/files/${fileId}/permissions/permissionId`, {
headers: {
Authorization: `Bearer ${oAuthToken}`
},
method: "PATCH",
body: JSON.stringify(newPermissionsObject)
})
Looker Studio
const oAuthToken = '123' // This should be replaced with a valid OAuth token.
const assetId = '123' // This should be replaced with a valid asset ID.
const newPermissionsObject = {
permissions: {
//...
}
}
fetch(`https://datastudio.googleapis.com/v1/assets/${assetId}/permissions`, {
headers: {
Authorization: `Bearer ${oAuthToken}`
},
method: "PATCH",
body: JSON.stringify({
name: assetId,
permissions: newPermissionsObject
})
})
Per alternative specifiche per i singoli casi d'uso, consulta: