我正在尝试通过Rails应用程序对Mirth服务器API执行HTTP请求,但它总是返回Net :: HTTPServerException(403“Forbidden”)。我无法理解这是什么问题。
如果我使用相同的网址并在Google的高级休息客户端中设置Content-Type: application/xml
,则可以使用,但是从我的rails应用中,它会返回上述错误。如果我尝试在该Mirth API中执行帖子来验证用户,则会出现同样的问题(参见下面的代码)。
这是我的控制器中的代码:
@login = HTTParty.post("https://#{server}:#{port}/api/users/_login",
{:body => [{"username" => "xxxxxxxx", "password" => "xxxxxxxxxxx"}],
:headers => { 'Content-Type' => 'application/x-www-form-urlencoded',
'Accept' => 'application/xml'}
})
@response = HTTParty.get("https://#{server}:#{port}/api/server/configurationMap",
{:basic_auth => {:username => "xxxxxxxx", :password => "xxxxxxxxxxx"},
:headers => { 'Content-Type' => 'application/xml'}
})
如果我通过rails git bash使用curl发出请求,它也会出现同样的错误。
curl -X POST --header 'Content-Type: application/x-www-form-urlencoded' --header 'Accept: application/xml' -d 'username=xxxxxxx&password=xxxxxxxxxx' 'https://192.168.4.196:8444/api/users/_login'
curl -X GET --header 'Accept: application/xml' 'https://192.168.4.196:8444/api/server/configurationMap'
有人可以帮帮我吗?提前谢谢!