验证码插件在自己的页面上。 一步步

2020-09-13 05:16发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


请,您能告诉我如何在我的页面上添加Recaptcha吗?

系统是B2B 5.1.0.0加速器。 我阅读了 https://wiki.hybris.com/display/accdoc/captchaaddon+AddOn, 但它不起作用。

我的脚步

  • 在localextensions.xml中取消注释:

  • 运行:ant addoninstall -Daddonnames =" captchaaddon" -DaddonStorefront.yb2bacceleratorstorefront =" mystorefront"

  • 在local.properties中写入:mystorefront.additionalWebSpringConfigs.captchaaddon = classpath:/captchaaddon/web/spring/captchaaddon-web-spring.xml

  • 创建自己的page.jsp,格式为:

  • 创建自己的SmthController.java:

    包org.myfront.storefront.controllers.pages;

    @Controller @Scope(" tenant")@RequestMapping(value ="/img/smth")公共类SmthController扩展了AbstractPageController {@RequestMapping(value ="",method = RequestMethod.GET)@RequireHardLogIn公共字符串doRegister(@RequestParam(value =" smth",defaultValue =" empty")最后的字符串smth ,最终HttpServletRequest请求,最终HttpServletResponse响应,最终模型模型){return getSmth(session,model); }}

  • ant全部清除,启动hybris系统,在HMC中为baseStore启用Capcha。

加载页面后,它引发异常:在导入了前缀" recaptcha"的标签库中未定义标签" widget"。

我不理解captchaaddon-web-spring.xml中必须更改的内容吗? 我没有更改它,它看起来像这样:

  
 
 
      
 
      
          
              
          
          
              
          
          
              
          
          
              
          
          
              
          
      
      
      
          <属性名称=" siteConfigService" ref =" siteConfigService"/>
          <属性名称=" baseStoreService" ref =" baseStoreService"/>
      
 
  

  

请告诉我我在想什么?

谢谢。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


请,您能告诉我如何在我的页面上添加Recaptcha吗?

系统是B2B 5.1.0.0加速器。 我阅读了 https://wiki.hybris.com/display/accdoc/captchaaddon+AddOn, 但它不起作用。

我的脚步

  • 在localextensions.xml中取消注释:

  • 运行:ant addoninstall -Daddonnames =" captchaaddon" -DaddonStorefront.yb2bacceleratorstorefront =" mystorefront"

  • 在local.properties中写入:mystorefront.additionalWebSpringConfigs.captchaaddon = classpath:/captchaaddon/web/spring/captchaaddon-web-spring.xml

  • 创建自己的page.jsp,格式为:

  • 创建自己的SmthController.java:

    包org.myfront.storefront.controllers.pages;

    @Controller @Scope(" tenant")@RequestMapping(value ="/img/smth")公共类SmthController扩展了AbstractPageController {@RequestMapping(value ="",method = RequestMethod.GET)@RequireHardLogIn公共字符串doRegister(@RequestParam(value =" smth",defaultValue =" empty")最后的字符串smth ,最终HttpServletRequest请求,最终HttpServletResponse响应,最终模型模型){return getSmth(session,model); }}

  • ant全部清除,启动hybris系统,在HMC中为baseStore启用Capcha。

加载页面后,它引发异常:在导入了前缀" recaptcha"的标签库中未定义标签" widget"。

我不理解captchaaddon-web-spring.xml中必须更改的内容吗? 我没有更改它,它看起来像这样:

  
 
 
      
 
      
          
              
          
          
              
          
          
              
          
          
              
          
          
              
          
      
      
      
          <属性名称=" siteConfigService" ref =" siteConfigService"/>
          <属性名称=" baseStoreService" ref =" baseStoreService"/>
      
 
  

  

请告诉我我在想什么?

谢谢。

付费偷看设置
发送
2条回答
野沐沐
1楼-- · 2020-09-13 05:41

我解决了。 我的page.jsp:

  
  
   

在storeFront扩展中,添加库recaptcha4j-0.0.8.d在SmthController.java中添加:

 最终ReCaptchaImpl reCaptcha = new ReCaptchaImpl();
  reCaptcha.setPrivateKey(Config.getString(" recaptcha.privatekey"," 6LdJ6OUSAAAAAEezlXtWv3iXAzg3V3ZCwamTgY4a"));
  model.addAttribute(" publickey",Config.getString(" recaptcha.publickey"," 6LdJ6OUSAAAAAEezlXtWv3iXAzg3V3ZCwamTgY4a"));

  最后的ReCaptchaResponse reCaptchaResponse = reCaptcha.checkAnswer(Config.getString(" website"," global-key.hybris.com"),
          recaptcha_challenge_field,recaptcha_response_field);
  如果(!reCaptchaResponse.isValid())
  {
      System.out.println("答案有误");
      返回" bad_captcha";
  }

  
shere_lin
2楼-- · 2020-09-13 05:41

您好,如果可以的话,请提供ReCaptchaImpl类逻辑。

致谢,萨蒂什

一周热门 更多>

点击此处---> EasySAP.com 一起学习S4 HANA ...

相关问答