Bu dokümanda, izin için Drive API kullanılarak kodun nasıl taşınacağı açıklanmaktadır. yönetimiyle ilgili daha fazla bilgi edinebilirsiniz. Yaygın Drive API uç noktaları için şunu gösterir: ilgili Looker Studio API kodunu kullanın.
Dosyalar
Drive API dosyaları uç noktaları için Looker Studio API'nin yalnızca bir eşdeğeri vardır
Files: list
uç noktası.
Liste
API | Yöntem | Uç nokta |
---|---|---|
Drive | POST |
/drive/v3/files |
Looker Studio | GET |
/v1/assets:search |
Karşılaştırma:
Google 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}`
}
})
Arama öğelerini inceleyin.
İzinler
Oluşturun, Silin ve Alın
API | Yöntem | Uç nokta |
---|---|---|
Drive | POST |
/drive/v3/files/fileId/permissions |
Drive | DELETE |
/drive/v3/files/fileId/permissions/permissionId |
Drive | GET |
/drive/v3/files/fileId/permissions/permissionId |
Looker Studio API'de yönetmek için karşılık gelen uç nokta yoktur
birden çok Permissions
nesnesi var. Bir için yalnızca bir izin nesnesi vardır
Looker Studio öğesi vardır ve her zaman mevcuttur.
- Bir kişiyi öğeden kaldırmak için tüm izinleri iptal etme bölümünü inceleyin
- Bir öğeye kullanıcı eklemek için üye ekleme bölümüne bakın
- Bir öğenin izin nesnesini görüntülemek için izin alma bölümüne bakın
Liste
Drive ile Looker Studio arasında 1'e 1 eşleşme olmasa da uç noktalar ya da benzer hedeflere yönlendirir. Temel fark, bir Drive dosyasında birçok izin nesnelerini içerir ve Looker Studio'da tam bir tane vardır.
API | Yöntem | Uç nokta |
---|---|---|
Drive | GET |
/drive/v3/files/fileId/permissions |
Looker Studio | GET |
/v1/assets/assetId/permissions |
Karşılaştırma:
Google Drive
Aşağıdaki kod, Drive API için tüm izin nesnelerini listeler. Kodunuza bağlı olarak, sayfalandırmayı kullanarak bu yöntemi birden çok kez çağırabilirsiniz. göre ayarlanmış tüm izinleri görebileceğinizden emin olmak için olabilir.
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
Looker Studio öğesi için yalnızca bir izin nesnesi olduğundan sayfalandırmayı hesaba katması gerekir.
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}`
}
}
İzin alma bölümünü inceleyin.
Güncelle
İzinleri güncellemek için Looker Studio ve Drive API'leri çok benzerdir.
işlevi görür. Temel fark, bir expirationTime
Looker Studio izni.
API | Yöntem | Uç nokta |
---|---|---|
Drive | PATCH |
/drive/v3/files/fileId/permissions/permissionId |
Looker Studio | PATCH |
/v1/assets/assetId/permissions |
Karşılaştırma:
Google 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
})
})
Kullanım alanına özgü alternatifler için şuraya bakın: