2016-09-14 24 views
0

我想编写一个调用AWS API网关端点的xquery模块。我跑了类似下面的代码:Marklogic 8 http-get到AWS API网关会导致SSL握手失败

xdmp:http-get("https://gxkhphr091.execute-api.eu-west-1.amazonaws.com/prod", 
     <options xmlns="xdmp:http"> 
      <allow-sslv3>false</allow-sslv3> 
      <allow-tls>true</allow-tls> 
     </options>) 

和所有我得到的回复是:

[1.0-ml] SVC-SOCCONN: xdmp:http-get("https://gxkhphr091.execute-api.eu-west-1.amazonaws.com/prod", <options xmlns="xdmp:http"/>) 
-- Socket connect error: SSL_connect 192.168.15.17:59789-52.85.63.117:443: sslv3 alert handshake failure (0x14077410) 

端点不需要客户端的认证。这样做从同一主机卷曲工作得很好:

curl -v https://gxkhphr091.execute-api.eu-west-1.amazonaws.com/prod 

,我读了AWS API网关不支持任何SSLv3的更多 - 它需要TLS,这就是为什么我用上面的选项,但我也尝试过其他选项组合和它们都会导致上述相同的SSLv3错误。

我尝试过使用其他https:// URL(例如那些适用于AWS S3的URL)并且它们可以工作,所以它与API Gateway执行SSL/TLS的方式有所不同。

任何想法是什么问题?

回答