Recaptcha在SSL站点的验证中给出404错误

时间:2013-03-06 16:20:19

标签: asp.net-mvc asp.net-mvc-4 html-helper recaptcha

在我的ASP.NET MVC 4项目中,我正在使用Microsoft.Web.Helpers(来自NuGet包),我的代码是ReCaptcha的一个非常基本的实现。在我看来,我有:

@ReCaptcha.GetHtml(theme: "clean")       

在我的控制器中我有:

Microsoft.Web.Helpers.ReCaptcha.Validate();

我们正在使用的SSL实现带来了复杂性。

我已将适当的设置添加到我的web.config:

  <system.net>
    <defaultProxy>
      <proxy proxyaddress="http://***proxy script settings**" 
            autoDetect="False" 
            usesystemdefault="False" 
            bypassonlocal="True" />
    </defaultProxy>
  </system.net>

似乎在配置方面没有什么可以做的,但我收到错误消息

  

远程服务器返回错误:(404)Not Found

当我在我的控制器中的表单post方法上点击recaptcha validate方法时。

我在这里找到了许多其他答案,但他们似乎都建议您更改网址或升级。因为我使用NuGet包,我原以为我使用的是最新版本。任何有更多信息的想法或链接都非常感谢。我已经在这个网站和谷歌上做了很多相关的搜索

修改

我发现早期版本的firefox在给定我们的网络条件的情况下实际渲染重新捕获框有问题,但最新版本没问题。虽然验证是在控制器上完成的,但我想这里没有问题。

1 个答案:

答案 0 :(得分:0)

经过大量的头发和一般的混乱,我发现问题是我们的企业防火墙阻止了谷歌API的POST(但不是GET)。我以前曾打过折扣,因为我可以导航到recaptcha使用的服务(http://www.google.com/recaptcha/api/verify)。

我通过构建帖子必备部分的HTML页面并在浏览器中提交它来找到这个。公司“此页被阻止”出现 - 但是在代码中返回的错误是404.该错误有些误导,但这是我们基础设施部门的奇怪行为。