我正在尝试使用 Postman 测试 Synology API。然而到目前为止,我还无法让“sid”工作。我可以进行身份验证并接收“sid”,但使用它的任何请求都会返回 403。
DSM 版本 - DSM 6.2.3-25426 更新 2
身份验证
/webapi/auth.cgi?api=SYNO.API.Auth&version=3&method=login&account={account}&passwd={password}&session=FileStation&format=sid
我复制响应中的“sid”。
信息
/webapi/FileStation/entry.cgi?api=SYNO.FileStation.Info&version=1&_sid={sid}
这会返回 403。我使用“sid”发出的任何请求都会失败。我也尝试过使用 format=cookie
选项,但结果相同。
很想知道您是否知道一些可以为我指明正确方向的东西?
最佳答案
我已经弄清楚为什么这不起作用(遇到同样的问题),在您对 FileStation 信息的请求中,您正在向 /webapi/FileStation/entry.cgi
发出请求,但它实际上应该是 /webapi/entry.cgi
,因此完整的请求将是 /webapi/entry.cgi?api=SYNO.FileStation.Info&version=1&_sid={sid}
在向以下位置发出请求时,您可以看到这是正确的路径:/webapi/query.cgi?api=SYNO.API.Info&version=1&method=query&query=SYNO.FileStation.Info
路径说它是entry.cgi
。 API 文档肯定有点误导性,如果能更新一下就好了。
关于api - Synology FileStation API 无法授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63456095/