Я написал некоторый код, который успешно обращается к электронной таблице Excel на сайте sharepoint. Я сделал это, найдя driveid в графическом обозревателе, затем просмотрел, чтобы найти элемент книги и рабочий лист.
Теперь мне нужно сделать то же самое, но я не могу использовать Graph Explorer, чтобы найти идентификатор диска, поэтому я понял, что могу создать идентификатор диска, используя метод, показанный в https://www.techmikael.com/2018/07/using-microsoft-graph-to-get-pdf.html
(примечание: моя версия node.js того же кода находится на https://glitch.com/~ultra-sloop)
С этого URL:
https://alphaindigo.sharepoint.com/:x:/r/_layouts/15/Doc.aspx?sourcedoc=%7B1F4C6E80-0A55-4717-8D8D-19382F8E3C69%7D&file=Buddies.xlsx&action=default&mobileredirect=true
Я создаю это.
https://graph.microsoft.com/v1.0/shares/u!aHR0cHM6Ly9hbHBoYWluZGlnby5zaGFyZXBvaW50LmNvbS86eDovci9fbGF5b3V0cy8xNS9Eb2MuYXNweD9zb3VyY2Vkb2M9JTdCMUY0QzZFODAtMEE1NS00NzE3LThEOEQtMTkzODJGOEUzQzY5JTdE/driveitem
Когда я запускаю это в Graph Explorer в качестве теста, он дает мне подробную информацию о driveItem, например:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#shares('u%21aHR0cHM6Ly9hbHBoYWluZGlnby5zaGFyZXBvaW50LmNvbS86eDovci9fbGF5b3V0cy8xNS9Eb2MuYXNweD9zb3VyY2Vkb2M9JTdCMUY0QzZFODAtMEE1NS00NzE3LThEOEQtMTkzODJGOEUzQzY5JTdE')/driveItem/$entity",
"@microsoft.graph.downloadUrl": "https://alphaindigo.sharepoint.com/_layouts/15/download.aspx?UniqueId=1f4c6e80-0a55-4717-8d8d-19382f8e3c69&Translate=false&tempauth=eyJ0eXAiOiJKV1QiLCJhbGciOiJub25lIn0.eyJhdWQiOiIwMDAwMDAwMy0wMDAwLTBmZjEtY2UwMC0wMDAwMDAwMDAwMDAvYWxwaGFpbmRpZ28uc2hhcmVwb2ludC5jb21AMGQ3NTY1NzUtMjgwOC00NmE1LWIyYmEtMDFlZTgzZmIwZTEzIiwiaXNzIjoiMDAwMDAwMDMtMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwibmJmIjoiMTU2Mjg5MzAyNSIsImV4cCI6IjE1NjI4OTY2MjUiLCJlbmRwb2ludHVybCI6InNzeDk3QjhPRk1mTXVTS1NyK2M5dFpITWtsdi9yR1BUbWdEL2hnSlhDVTQ9IiwiZW5kcG9pbnR1cmxMZW5ndGgiOiIxMjIiLCJpc2xvb3BiYWNrIjoiVHJ1ZSIsImNpZCI6Ik5qWTNPRFl4WTJNdE4yWXpNeTAwWTJFd0xUbGhaV1l0WkRnM05ERXpOV05sTW1GaSIsInZlciI6Imhhc2hlZHByb29mdG9rZW4iLCJzaXRlaWQiOiJORGM1TURWaE4yUXRObUl5TXkwME5EUTRMV0ZtWkdRdE5UVTJZamcwWlRNNFpUSmoiLCJhcHBfZGlzcGxheW5hbWUiOiJHcmFwaCBleHBsb3JlciIsInNpZ25pbl9zdGF0ZSI6IltcImttc2lcIl0iLCJhcHBpZCI6ImRlOGJjOGI1LWQ5ZjktNDhiMS1hOGFkLWI3NDhkYTcyNTA2NCIsInRpZCI6IjBkNzU2NTc1LTI4MDgtNDZhNS1iMmJhLTAxZWU4M2ZiMGUxMyIsInVwbiI6ImRvdWdAYWxwaGFpbmRpZ28ub25taWNyb3NvZnQuY29tIiwicHVpZCI6IjEwMDMyMDAwNDZDREY4QzQiLCJjYWNoZWtleSI6IjBoLmZ8bWVtYmVyc2hpcHwxMDAzMjAwMDQ2Y2RmOGM0QGxpdmUuY29tIiwic2NwIjoibXlmaWxlcy5yZWFkIGFsbGZpbGVzLnJlYWQgbXlmaWxlcy53cml0ZSBhbGxmaWxlcy53cml0ZSBhbGxzaXRlcy5yZWFkIGFsbHNpdGVzLndyaXRlIiwidHQiOiIyIiwidXNlUGVyc2lzdGVudENvb2tpZSI6bnVsbH0.L2t4YmRDQlpwS2dGMjIvdmxoVFA5ZXA0Qyt0b3VWWE9rb0h1UTJzcFVHRT0&ApiVersion=2.0",
"createdDateTime": "2019-05-05T04:52:56Z",
"eTag": "\"{1F4C6E80-0A55-4717-8D8D-19382F8E3C69},688\"",
"id": "01FQPFGAEANZGB6VIKC5DY3DIZHAXY4PDJ",
"lastModifiedDateTime": "2019-06-29T02:24:23Z",
"name": "Buddies.xlsx",
"webUrl": "https://alphaindigo.sharepoint.com/_layouts/15/Doc.aspx?sourcedoc=%7B1F4C6E80-0A55-4717-8D8D-19382F8E3C69%7D&file=Buddies.xlsx&action=default&mobileredirect=true",
"cTag": "\"c:{1F4C6E80-0A55-4717-8D8D-19382F8E3C69},690\"",
"size": 31938,
"createdBy": {
etc etc...
но когда я прикрепляю / workbook / worksheet / file-name к концу
https://graph.microsoft.com/v1.0/shares/u!aHR0cHM6Ly9hbHBoYWluZGlnby5zaGFyZXBvaW50LmNvbS86eDovci9fbGF5b3V0cy8xNS9Eb2MuYXNweD9zb3VyY2Vkb2M9JTdCMUY0QzZFODAtMEE1NS00NzE3LThEOEQtMTkzODJGOEUzQzY5JTdE/driveitem/workbook/worksheets('Sheet1')/range(address='A1:D4')
Я получаю эту ошибку:
"error": {
"code": "InternalServerError",
"message": "Unable to find target address",
"innerError": {
"request-id": "5bea4b7f-91d9-4ba6-a26f-7964a4122a0a",
"date": "2019-07-12T00:36:16"
}
}
}
Если я отойду оттуда, отбросим имя и диапазон листа, используя это:
https://graph.microsoft.com/v1.0/shares/u!aHR0cHM6Ly9hbHBoYWluZGlnby5zaGFyZXBvaW50LmNvbS86eDovci9fbGF5b3V0cy8xNS9Eb2MuYXNweD9zb3VyY2Vkb2M9JTdCMUY0QzZFODAtMEE1NS00NzE3LThEOEQtMTkzODJGOEUzQzY5JTdE/driveitem/workbook
Я получаю ту же ошибку
Похожий вопрос уже указан
Получение книги Excel.xlsx с сайта Sharepoint с помощью Microsoft Graph API
но поскольку у меня уже есть элемент DriveItem, а не listItem, он не отвечает на мою проблему.