开发Teams个人应用:如何通过Graph API获取文件真实上传者?
解决Teams文件上传后DriveItem真实创建者/上传者的获取问题
针对你遇到的Teams网页端上传文件时createdBy字段显示团队创建者而非本人的问题,可通过以下几种方式获取真实上传者信息:
优先使用
lastModifiedBy字段
Teams网页端上传文件时,createdBy会被团队创建者身份覆盖,但实际执行上传操作的用户信息会保留在lastModifiedBy中。你可以在调用Graph API时指定返回该字段:GET /drives/<driveId>/items/<itemId>?$select=lastModifiedBy该字段的
user子对象会包含真实上传者的ID、显示名等信息。展开
createdByUser关联对象
尝试在API请求中展开createdByUser,部分场景下能获取到未被覆盖的真实创建者信息:GET /drives/<driveId>/items/<itemId>?$expand=createdByUser查询文件版本历史
如果上述方法都不生效,可调用文件版本历史API获取第一个版本的修改者,该信息即为真实上传者:GET /drives/<driveId>/items/<itemId>/versions返回结果中最早版本的
lastModifiedBy字段对应的用户就是文件的实际上传者。
注意事项
- 建议在不同上传场景(网页/桌面/移动端)下测试字段值,确保逻辑适配所有场景
- 若文件存储在团队站点中,需确认站点权限配置是否影响字段的正确记录
内容的提问来源于stack exchange,提问作者user17700537
相关产品推荐
相关产品推荐

