Microsoft graph api 将纯文本文件上载到OneDrive后,驱动器项目大小错误

Microsoft graph api 将纯文本文件上载到OneDrive后,驱动器项目大小错误,microsoft-graph-api,microsoft-graph-files,Microsoft Graph Api,Microsoft Graph Files,当我有时看到PUT请求后驱动器项的大小错误时。我知道OneDrive可能会动态修改Office文件,但我也看到它在纯文本文件中发生 在下面的示例中,我将字符串第一个版本(13字节)写入一个新的驱动器项 PUT https://graph.microsoft.com/v1.0/drives/b!e8-Jy2tSiUy2AJBZzvZxc3DIh8dRoG9DrM6MEcF_oxinj1yhH9A8RYDHeCfkxipc/items/root:/onedrive-public-kuvgpshldg

当我有时看到
PUT
请求后驱动器项的大小错误时。我知道OneDrive可能会动态修改Office文件,但我也看到它在纯文本文件中发生

在下面的示例中,我将字符串
第一个版本
(13字节)写入一个新的驱动器项

PUT https://graph.microsoft.com/v1.0/drives/b!e8-Jy2tSiUy2AJBZzvZxc3DIh8dRoG9DrM6MEcF_oxinj1yhH9A8RYDHeCfkxipc/items/root:/onedrive-public-kuvgpshldglnfidf.
txt:/content
我认为这无关紧要,但我将
内容类型
标题设置为
应用程序/octet流
。Graph API返回状态代码201(如预期)和响应:

{
“@odata.context”:“https:\/\/graph.microsoft.com\/v1.0\/$metadata”驱动器('b%21e8-JY2TSIUY2AJBZVZC3DIH8DROG9DRM6MECF\u Oxinj1H9A8RYDHECFKXIPC')\/items\/$entity”,
“@microsoft.graph.downloadUrl”:"https:\/\/REDACTED.sharepoint.com\/sites\/go test onedrive kuvgpshldglnfiff\/\u layouts\/15\/download.aspx?UniqueId=ce025490-d7ee-438a-ac00-a817784e7ea7&Translate=false&tempauth=eyj0exaiioijkv1qiljhbgcioijjub25lin0.eyjhdwjwiwmdawmy0wmdawltdbmzjety2uwmc0wmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmDuzzwqyiiwiiwiaxnzijoimdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawmdawibmijiomtu5otq2mj3myisimv4ccij1otk0njizmilcjlbmrwb2ludhybci6iktcstjngo0mvn3mjvng90mmo1zirmedtbvjbv1grywzg0bv9iiwizw5kcg9pbnrxmxzw5ndggioiiiijiiiiiiiiiiiiiijjjjjjjjjjjjjc2xxxxxxxv3v3v3biyjjjzzzzzv6jjjjjjjzzzzzzzv6v6jjjjjjzzzzzzzzzzzzzzzzzzv6v6mzz2.目前,我国的一部分城市社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区社区ZPBGVZlnjlywqilcj10dci6ijeilcj1c2vqzxjzaxn0zw50q29va2llijpudwxsfq.nm1lstjml0u1n2dvsz2l2mwbkvoc3fnc0pkbk4wz0psm1fswfarwhdtnd0&ApiVersion=2.0“,
“createdDateTime”:“2020-09-07T07:13:03Z”,
“eTag”:“{CE025490-D7EE-438A-AC00-A817784E7EA7},1\”,
“id”:“013OPAMZEQKQBM53WXRJB2YAFIC54E47VH”,
“lastModifiedDateTime”:“2020-09-07T07:13:03Z”,
“名称”:“onedrive public kuvgpshldglnfiff.txt”,
“webUrl:“https:\/\/redact.sharepoint.com\/sites\/go test onedrive kuvgpshldglnfiff\/Delade%20dokument\/onedrive public kuvgpshldglnfiff.txt”,
“cTag”:“c:{CE025490-D7EE-438A-AC00-A817784E7EA7},1\”,
“尺寸”:26,
“createdBy”:{
“申请”:{
“id”:“9c557449-f2f5-4c73-a638-818eb86aad98”,
“displayName”:“已编辑”
}
},
“lastModifiedBy”:{
“申请”:{
“id”:“9c557449-f2f5-4c73-a638-818eb86aad98”,
“displayName”:“已编辑”
}
},
“家长参考”:{
“driveId:“b!e8-JY2TSIUY2AJBZZVZC3DIH8DROG9DRM6MECF_Oxinj1H9AYDHECFKXIPC”,
“驱动类型”:“文档库”,
“id”:“013OPAMZF6Y2GOVW7725BZO354PWELRRZ”,
“路径”:“\/drives\/b!e8-Jy2tSiUy2AJBZzvZxc3DIh8dRoG9DrM6MEcF\u oxij1h9a8rydhecfkxipc\/root:”
},
“文件”:{
“mimeType”:“text\/plain”,
“散列”:{
“quickXorHash”:“ZkiDHOZABxDYoQxylUMa3uAGAAA=”
}
},
“文件系统信息”:{
“createdDateTime”:“2020-09-07T07:13:03Z”,
“lastModifiedDateTime”:“2020-09-07T07:13:03Z”
}
}
请注意,驱动器项的大小是26,而不是预期的13。如果我使用
GET
请求获取驱动器项,则驱动器项的大小仍然是26。如果我遵循下载URL,则会获得正确的
内容长度
头,但:

$curl-v-H“授权:持有者$TOKEN”$DOWNLOADURL
...

在遵循下载URL时,是否可以直接获得正确的驱动器项目大小,而不必检查
内容长度
标题?

在OneDrive中上载文件后,它将在上载后向Office文档添加额外的元数据(但不是文件类型).我记得有一个相关的帖子在讨论这个-。

在这种情况下,感觉像是OneDrive的错误,因为它是纯文本文件,下载后驱动器项目大小与文件大小不匹配。我发现他们在哪里讨论了类似的问题。如果不是错误,我想应该更清楚地记录。我创建了。很棒的@tomyl。我会d也一样…!!很高兴你这么做了。希望他们能修复/更新它。