【发布时间】:2016-06-17 20:07:00
【问题描述】:
我们正在尝试使用 API Manager (1.10) 调用已使用授权标头令牌的现有 API (POST)。我做了几件事,包括根据一篇题为“Pass a Custom Authorization Token to the Backend”的文章使用调解,但这似乎不起作用。
我终于尝试将“Auth Type”设置为“None”,根据文档,这应该只是将 API 调用直接传递给后端(包括授权标头)。这也不起作用。该调用到达后端服务,但似乎丢失了 Authorization 标头,因此它引发 400 错误(当我省略标头并直接使用 SoapUI 调用后端 api 时,我得到相同的错误)。
任何帮助将不胜感激!
【问题讨论】:
-
您能分享您的 API 配置,并尝试使用 TCPMON 捕获消息吗?
-
不确定如何共享 API 配置。它是rest,2个formdata参数,后端使用的header授权,authtype为None。以下是 TCPMON 的结果: 6d {"error":"server_error","error_description":"处理您的请求时出错。请重试。"} 0
-
BTW - 这个错误来自后端服务,所以看起来请求正在到达它但缺少授权标头。
-
您在关注Pass a Custom Authorization Token to the Backend 文档时遇到了什么问题?
-
显然是用户错误 :-) 以前我在 Soap UI 中将自定义字段作为表单数据发送,而不是在我在 API 管理器中定义的标题中发送。一旦我把它放在标题中,它就起作用了。所以我有办法让它工作。但是,我仍然希望它在我可以将 API 调用传递给使用授权标头的后端服务的情况下工作。
标签: wso2 authorization wso2-am bearer-token