调用Model Derivative API转SVG时遇client_id无权限报错咨询
这个报错我碰到过好多次,大概率是你的Autodesk App配置或者Token权限出了问题,我给你梳理几个关键排查点:
检查App的API权限配置
登录Autodesk开发者控制台,找到你正在用的App,一定要确认Model Derivative API已经被勾选启用。很多人创建App的时候只选了OSS(对象存储)相关的API,忘了开Model Derivative的权限,这是最常见的原因。验证Token的Scope是否齐全
获取Token的时候,必须包含和Model Derivative相关的scope:data:read、data:write、viewables:read。如果之前的Token请求只加了bucket操作的scope(比如bucket:create、bucket:read),那肯定没权限调用转换接口。举个正确的scope参数例子:scope=data:read data:write viewables:read确认Token对应正确的App
有时候会不小心混用了其他App的client_id/client_secret生成Token,或者Postman里还存着旧的无效Token。你可以调用GET /authentication/v1/validate接口验证当前Token的所属App和权限范围,确保和你用来创建Bucket、上传文件的App是同一个。检查文件和Bucket的归属
确保你要转换的文件是存在于当前App创建的Bucket里的,如果Bucket是其他App创建的,当前App也会没有访问权限,但这个报错更偏向API本身的权限,所以优先排查前面三点。
如果以上都确认没问题,建议重新生成一个带正确scope的Token,再重试转换请求。另外别忘了检查请求Headers里的Authorization格式是否正确,必须是Bearer {你的Token},别漏了Bearer前缀。
内容的提问来源于stack exchange,提问作者Portekoi

