Box API在404中获得共享文件结果



已经查看了如何使用box-api获取共享项目?和盒子开发人员文档https://developers.box.com/docs/#shared-items。我尝试在.NET代码,Firefox海报中和使用卷发中在.NET代码中添加https://api.box.com/2.0/shared_items的请求。他们都导致404.我已经证实了我的文件的共享链接向具有链接的任何人打开。这是我的卷曲代码(卫生):

curl https://api.box.com/2.0/shared_items -H "Authorization: Bo
xAuth api_key=xxxxxxxxxxxxxxxxxxxxx" -H "BoxApi: shared_link=https://
app.box.com/s/yyyyyyyyyyyyyyyyyyyyyyyyyyyy"
{"type":"error","status":404,"code":"not_found","help_url":"http://developers.
box.com/docs/#errors","message":"Not Found","request_id":"196207167555469c3017
14b"}

可能是什么问题?我尝试了一个错误的API_KEY,然后返回401,所以我知道整个设置都是正确的。

您的API密钥不应在请求中的任何地方包含。我认为,在旧的V1 API中使用了授权形式,现在已弃用。您链接到的文档中有一个卷曲示例,显示了您的授权标题的外观:

curl https://api.box.com/2.0/shared_items
-H "Authorization: Bearer ACCESS_CODE"
-H "BoxApi: shared_link=SHARED_LINK"

有关如何获取进入授权标题的访问令牌的更多信息,请查看OAuth教程。

需要身份验证的原因是因为API将在呼叫者权限的上下文中返回有关该项目的信息。例如,如果共享链接的创建者进行API调用,则将返回私人信息(例如其帐户中项目的完整路径)。如果另一个用户拨打电话,则将省略该私人信息。

话虽如此,您仍然可以直接导航到匿名下载打开的共享链接。您只需要使用API时,需要有关链接指向的项目的更多信息。

最新更新