0

我在我的 java jsp 设置中使用了 recaptcha。我在我的jsp中使用以下代码

<%@ page import="net.tanesha.recaptcha.ReCaptcha"%>
<%@ page import="net.tanesha.recaptcha.ReCaptchaFactory"%>


<%
ReCaptcha c = ReCaptchaFactory.newReCaptcha("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", "XXXXXXXXXXXXXXXXXXX", false);
out.print(c.createRecaptchaHtml(null, null));
out.flush();
%>

但是该站点使用 https,因此我在 IE 上收到“仅显示安全内容”消息。

如果我查看源 recaptcha 已生成以下内容

<script type="text/javascript" src="http://api.recaptcha.net/challenge?k=XXXXXXXXXXXXXXXXXXXXXXX"></script>

如何强制 recaptcha 使用 https 而不是 http?

4

2 回答 2

8

查看源代码,您需要更改:

ReCaptchaFactory.newReCaptcha(  //...

和:

ReCaptchaFactory.newSecureReCaptcha(  //...

而已!

也可以看看

于 2012-08-22T16:16:03.177 回答
0

您可以通过这种方式使其适用于安全和不安全的内容

ReCaptcha c=null;

if(request.getScheme().equals("https"))
{

     c= ReCaptchaFactory.newSecureReCaptcha(
            Constants.RECATCHA_PUBLIC_KEY,
            Constants.RECATCHA_PRIVATE_KEY, false);
}else{

     c = ReCaptchaFactory.newReCaptcha(
            Constants.RECATCHA_PUBLIC_KEY,
            Constants.RECATCHA_PRIVATE_KEY, false);

}
于 2013-09-13T09:53:48.123 回答