我有一个api(在jetty实例中运行),我使用双腿oauth协议来访问客户端。我写了一个简单的java客户端(使用oauth-signpost)连接到api,连接成功。
我想把api放在一个apache http服务器后面。 apache http服务器配置为将请求转发给api。
以下作品:
(没有oauth)客户端---> Apache HTTP Server - >码头
(with oauth)客户端--->码头
以下不起作用:
(with oauth)客户端---> Apache HTTP Server --->码头
我收到以下错误消息
“签名方法HMAC-SHA1的签名无效”
你们有没有遇到过这个问题?是否可以签署请求但没有主机名和端口?
谢谢。
答案 0 :(得分:0)
我有类似的问题。我发现的问题是OAuth签名和OAuth标头块需要有Jetty URL,而不是Apache URL。
我不得不修改我的代码以传递两个URL。我向(Apache)发送请求的URL和最终系统上的资源URL(Jetty URL)。