0

我对与 CORS 一起使用时的 Tuleap REST API 有疑问。

基本上,我正在尝试进行 REST 调用以查看我的项目的积压工作。

参考 API Explorer,为此我需要执行如下 GET 调用:/api/projects/{id}/backlog 我还需要添加自定义标头 X-Auth-Token 和 X-Auth-UserId 以确保身份验证。

当我使用 HTTP 请求工具(Firefox 的海报)执行此请求时,一切正常,我得到状态 200。

现在的问题是我正在尝试开发一个可以执行相同请求的应用程序(在 angularJS 中)。

我注意到,当页面执行请求时,它首先执行一个预检 OPTIONS 请求,这是由于 Cross-Origin-Ressource-Sharing 所致。

请求标头

似乎 X-Auth-Token 和 X-Auth-UserId 标头已放入 Access-Control-Request-Headers。因此,我从服务器获得了未经授权的 401 响应代码,我无法完成请求。

我一直在网上寻找,但找不到关于如何使这个电话正常工作的答案。

4

1 回答 1

1

最近有一个贡献应该消除对所有 OPTIONS 路由进行身份验证以启用预检的需要:http: //gerrit.tuleap.net/#/c/2642/它已集成在 Tuleap 7.2.99.36 中 您的版本Tuleap 太旧或有错误。

请注意,所有调用仍然需要一些标头,例如“Content-Type: application/json”;集成测试应该提供很好的例子来说明如何进行调用:

https://tuleap.net/plugins/git/tuleap/tuleap/stable?p=tuleap%2Fstable.git&a=tree&h=9a513f2b7e765f7b9a4f7f72e9d43f40f623fec5&hb=293d47e4006531d3c0d04edfc6e7058e53c7c9c8sf=

https://tuleap.net/plugins/git/tuleap/tuleap/stable?p=tuleap%2Fstable.git&a=tree&h=4d9071865a42cbd0d40f5f933b4b0b1047c54a8c&hb=293d47e4006531d3c0d04edfc6e7058e53c7c9c9cs/lib

于 2014-08-20T07:00:44.773 回答