我使用Phonegap和jQuery Ajax调用来执行注销,如下所示
$.ajax({
url: logoutURL,
type: "POST",
data: {},
cache: false,
success: function(data, textStatus, jqXHR){........},
error: function(jqXHR, textStatus, errorThrown){
alert("Logout Failed.");
$.mobile.hidePageLoadingMsg();
enableAllButtons();
}
});
注销URL是一个SAML 2.0单注销(SLO)URL.我已经在Android上测试了这个,它工作得很好.但是当我在iOS上尝试SLO特别是iPad iOS 6.1.3它会失败,它返回我一个http 0.
我刚刚从IDP日志中发现,对于Android,它有一个“客户端证书错误,IP地址”的警告,但它会自动尝试在没有可信证书的情况下创建传出的SSL连接。
我怎样才能解决这个问题,或者有没有办法绕过证书问题?
所有的建议都很感激。
2条答案
按热度按时间aiazj4mn1#
这听起来不标准,所以我认为你最好的机会是与IDP提供商交谈。
am46iovg2#
我发现了这个问题,iOS无法调用自签名证书的https认证调用。这似乎是SDK的限制,你需要一个插件或在你的appdelegate中添加以下代码。m
我发现这篇文章很有帮助Ajax https调用在iOS中使用PhoneGap不工作?
然后它神奇地工作了。