与CORS一起使用时,我对Tuleap REST API有疑问。
基本上,我正在尝试进行REST调用以查看项目的积压工作。
参考API资源管理器,为此我需要进行如下的GET调用:/ api / projects / {id} / backlog我还需要添加自定义标头X-Auth-Token和X-Auth- UserId以确保身份验证。
当我使用HTTP请求工具(Firefox for Poster)执行此请求时,一切正常,我获得状态200.
现在的问题是我正在尝试开发一个可以执行相同请求的应用程序(在angularJS中)。
我注意到当页面正在执行请求时,它首先执行预检OPTIONS请求,这是由于Cross-Origin-Ressource-Sharing。
似乎X-Auth-Token和X-Auth-UserId标头被放入Access-Control-Request-Headers中。因此,我从服务器获得了未经授权的401响应代码,但我无法完成请求。
我一直在网上找不到答案,因为如何使这个电话有效。
答案 0 :(得分:1)
最近的贡献应该消除所有OPTIONS路线上的身份验证需要以启用预检:http://gerrit.tuleap.net/#/c/2642/它是 集成在Tuleap 7.2.99.36中 您的Tuleap版本太旧或存在错误。
注意所有调用仍然需要一些标题,例如“Content-Type:application / json”;集成测试应提供如何进行调用的良好示例:
和