.NET 验证码 https

2023-11-25

我们已经开始使用 ASP.NET recaptcha 控件,它运行良好。但我们的要求之一是所有出站流量都通过 HTTPS。

我知道 recaptcha 支持 https,但不清楚在使用 ASP.NET 插件选项时如何配置(或者即使它是可配置的)。

有人有这方面的经验吗?

我将扩展一下我迄今为止所发现的内容......

Recaptcha包包含3个公共类

RecaptchaControl, RecaptchaValidator and RecaptchaResponse

RecaptchaControl是一个 Asp.NET 控件,那里的 recaptcha 特定方法似乎与主题/外观和感觉有关。

验证器的实例有一个 RemoteIP 字段(我认为它代表验证服务器),但我无法将其绑定到控件。

RecaptchaResponse似乎或多或少代表了一个具有可能响应的枚举(有效/无效/连接失败)。

看起来Recaptcha控件智能选择https如果请求是 https。 我假设它对验证执行相同的操作,但从源代码中尚不清楚http://code.google.com/p/recaptcha/source/browse/trunk/recaptcha-plugins/dotnet/library/

private const string VerifyUrl = "http://www.google.com/recaptcha/api/verify";
private const string RECAPTCHA_SECURE_HOST = "https://api-secure.recaptcha.net";        
private const string RECAPTCHA_HOST = "http://api.recaptcha.net";
--------------------------------SNIP------------------------------------
/// <summary>
        /// This function generates challenge URL.
        /// </summary>
        private string GenerateChallengeUrl(bool noScript)
        {
            StringBuilder urlBuilder = new StringBuilder();
            urlBuilder.Append(Context.Request.IsSecureConnection || this.overrideSecureMode ? RECAPTCHA_SECURE_HOST : RECAPTCHA_HOST);
            urlBuilder.Append(noScript ? "/noscript?" : "/challenge?");
            urlBuilder.AppendFormat("k={0}", this.PublicKey);
            if (this.recaptchaResponse != null && this.recaptchaResponse.ErrorCode != string.Empty)
            {
                urlBuilder.AppendFormat("&error={0}", this.recaptchaResponse.ErrorCode);
            }

            return urlBuilder.ToString();
        }

如果你签出http://recaptcha.net/apidocs/captcha/client.html它说:

“为了避免浏览器 警告,如果您在 SSL 站点,您应该替换http://api.recaptcha.net with https://api-secure.recaptcha.net."

很明显,recaptcha 支持 HTTPS 提交。 ASP.NET 控件是否有任何可配置出站 URL 的属性?最坏的情况下你可能需要使用反射器检查代码并了解它是如何构建的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.NET 验证码 https 的相关文章

  • Signalr - 发送消息的重写方法

    我有一个实施PersistentConnectionSignalr 中的类 对于我们的网站 我需要能够广播消息 然后让每个连接确定该特定消息是否与该特定用户相关 然后再将其通过管道发送到浏览器 像这样的事情 public class MyC
  • 带有服务总线的 SignalR Azure 云服务

    我使用 SignalR 构建了一个简单的聊天应用程序那里有教程 http www asp net signalr overview getting started tutorial getting started with signalr
  • 如何在 WebView 中添加 JavaScript 函数并稍后在提交 reCAPTCHA 时从 HTML 调用它

    我在 WebView 中添加一个 JavaScript 函数 如下所示 Kotlin val webView findViewById R id webview as WebView webView getSettings setJavaS
  • 如何在asp.net中按下按钮后刷新Gridview

    我正在尝试制作一个简单的图书馆数据库 我在网格视图中列出搜索结果 然后有一个文本框和一个按钮 用户输入 isbn 并单击贷款按钮 然后 如果有足够数量的物品 itemNumber gt 0 则由用户借出 这是用户界面的屏幕截图 我的问题是
  • 使用 Javascript 删除 HTML 表格行

    我正在使用下面的代码使用 javascript 删除 HTML 表行 但它给了我错误 使用下面的代码 我在运行时使用 javascript 创建一个列 其中包含删除锚标记 var tbody document getElementById
  • 检查 asp.net 文本框中的脚本

    我们希望阻止用户在文本框中输入 html 或 javascript 我们可以解析输入并检查尖括号 想知道是否有更好的方法来做到这一点 我发现用编码的尖括号替换尖括号可以解决大多数问题 这里有一个参考 http ha ckers org xs
  • 在sql server 2008中插入新记录时如何检查数据库中的值是否已存在

    我创建了一个存储过程 用于从表中选择值 如果该值已经存在 那么它将更新该值 但如果不存在 那么它将插入新值 我为此使用了存储过程 如下所示 Create PROCEDURE dbo sp Insert Tid int NULL Quid i
  • 编译器失败,错误代码-1073741819

    我们遇到以下错误 而且每次都需要重启服务器 The compiler failed with error code 1073741819 此外 ASP Net 工作正常 只有 ASP Net MVC 应用程序无法工作 任何想法 我的错误代码
  • “$(document).ready”函数的替代方案

    我在 aspx 页面中使用 fancybox 对于灯箱 文档就绪功能在此页面中不起作用 有人告诉我编写一个新的 JavaScript 代码来加载该页面中的灯箱 包括 jQuery 检查网络选项卡 确保您没有收到 404 检查控制台是否没有收
  • ASP.NET MVC 路由:如何从 URL 中省略“索引”

    我有一个名为 StuffController 的控制器 具有无参数索引操作 我希望从表单中的 URL 调用此操作mysite com stuff 我的控制器定义为 public class StuffController BaseContr
  • 自定义角色提供程序不实现继承的抽象成员

    我需要一些帮助在 ASP NET MVC 应用程序中实现自定义角色提供程序 问题是我遇到了几个错误 例如 MyRoleProvider does not implement inherited abstract member System
  • ASP.NET中如何访问除wwwroot以外的位置

    我可以使用访问服务器的物理位置Server MapPath 这给了我内部的物理路径wwwroot文件夹 我想将一些数据保存到同一服务器的另一个驱动器中D 驾驶 我想我无法获取以下位置的物理位置D 驾驶使用Server MapPath因为它位
  • 你调用的对象是空的。 IE问题

    我在 ASP Net 中开发了一个网站 它在除 IE 之外的所有浏览器中都能正常工作 在 IE 中我收到错误 对象引用未设置为对象的实例 在我的本地计算机中一切正常 发布到服务器后出现错误 有什么想法如何解决这个问题吗 这是我得到的堆栈跟踪
  • DSN 到连接字符串?

    我们有一个 ASP NET 网站 该网站使用一个数据库 我们希望能够使用连接字符串来访问该数据库 我们已经成功设置了一个 DSN 来连接到这个数据库 但我似乎无法发现连接字符串的正确魔力 是否有一种直接的方法可以将 DSN 中的值转换为连接
  • 执行多个查询时如何保持连接打开?

    我正在使用多个查询从应用程序中的同一服务器提取数据 问题是每次有新查询时我都必须打开一个新连接 是否有可能 打开连接 运行查询 拉取结果 运行另一个查询 拉取另一个结果 运行最终查询 拉取另一个结果 关闭连接 尽管您可能还不知道 但您的做法
  • 当按下 html 键盘按钮时,将文本添加到输入字段(具有焦点的字段)

    我使用 HTML 创建了一个屏幕键盘 div and a 标签 页面上有六个文本输入 名字 昵称 姓氏 注释 过敏 手机号码 我不太擅长 JS 但如果页面上只有一个输入 我确实知道该怎么做 但我不确定当有多个输入时该怎么做 我遇到的问题之一
  • 在页面之间导航时停止主页刷新?

    我在 ASP net 应用程序中使用母版页 在母版页中 我在更新面板中放置了 ContentPlaceHolder 以支持子页面中的 AJAX 问题是如何在页面之间导航时停止刷新 母版页控件 对于我尝试使用的页面之间的导航响应 重定向 窗口
  • 以编程方式在网格视图列上显示数据

    我有一个产品数量列表和一个网格视图 网格视图已经绑定到一些数据 但我想在网格视图的第三列显示产品数量列表 以下是如何将数据绑定到网格视图的代码 gvProduct DataSource distSPUItem gvProduct DataB
  • 如何在运行 ASP.NET 页面时以编程方式设置表格背景?

    我有一个 aspx 页面 其默认背景颜色是一种 当选择单选按钮的某个选项时 我需要能够以编程方式更改它 我尝试设置表的 ID 字段 但似乎无法在 C 代码隐藏文件中访问它 我原来的表是 table style width 100 backg
  • 如何向 Azure SQL 的 ASP.NET 成员资格提供程序添加重试逻辑?

    我们在 Azure SQL 数据库上有一个基于 ASP net sqlMembershipProvider 的用户数据库 很明显 开箱即用的 sqlMembershipProvider 4 0 不具备 Azure SQL 连接所需的重试逻辑

随机推荐

  • CRecordset::snapshot 在 VS2012 中不再工作 - 有什么替代方法吗?

    显然 在 VS2012 中 SQL CUR USE ODBC 已被弃用 更新 光标库似乎已从 VS2012 中完全删除 MFC 的 CDatabase 不再使用它 而它是 VS2010 和早期版本的 MFC 的默认值 而是使用 SQL CU
  • 在 r 中按日期和时间对数据帧进行排序和排名

    我有一个数据框如下 最初它只是两列 变量 时间戳 包含日期和时间 和 演员 我将 时间戳 变量分解为 日期 和 时间 然后将 时间 进一步分解为 小时 和 分钟 然后给出以下结构 dataf lt structure list hours
  • Java/GWT 和 Scala/Lift 哪个框架更好?

    我想开始一个新的 Web 应用程序项目 但我对 GWT Java 或 Lift Scala 这两个框架感到困惑 所以我想听听您的意见我选择哪一个 根据我的项目要求 两者都很好 那么根据框架比较 请告诉我哪个好 我发现 GWT 对于客户端来说
  • 如何创建tabindex组?

    我正在尝试创建 tabindex 组 其中按组中的选项卡它总是在该组中旋转 直到另一个组通过 javascript 或手动聚焦 问题 是否可以在没有 JavaScript 的情况下做到这一点 如果不能 我该如何实现这一点 Here is j
  • Android Activity.getParent() 总是返回 null

    我这里有这个小功能 public Activity getRootActivity Activity a this while a getParent null a a getParent return a 但 a getParent 总是
  • 是否可以定义中缀函数?

    是否可以在 CoffeeScript 或纯 JavaScript 中定义我自己的中缀函数 运算符 例如我想打电话 a foo b or a foo b 代替 a foo b 或者 当 foo 是全局函数时 foo a b 有什么办法可以做到
  • Jupyter 笔记本部分以法语显示

    我在用着Jupyter用于 Python 编程Windows 10一些文本被翻译成法语 但不是全部 这使得它有点烦人 有人知道如何更改显示语言吗 我无法在互联网上找到答案 因为每次我搜索 语言 时 它都会向我显示编程语言 R Python
  • 使用地图应用 iOS 生成步行路线

    截至目前 我使用以下代码成功地从我的应用程序中使用地图应用程序生成了路线 NSString formattedGroceryAddress NSString stringWithFormat EnhancedUIActionSheet ac
  • Android:清除活动堆栈

    我的申请中有多项活动 而且流程非常复杂 当我单击注销应用程序时 导航到登录屏幕 用户可以通过取消按钮退出 调用system exit 0 当我退出或后退按钮时 系统从堆栈中调用一个活动 当我到达登录屏幕时 如何清除堆栈中的所有活动 调用fi
  • ng-if 和 ng-show/ng-hide 有什么区别

    我试图理解之间的区别ng if and ng show ng hide 但它们在我看来是一样的 选择使用其中之一时我应该记住什么区别吗 ngIf The ngIf指示删除或重新创建基于表达式的 DOM 树的一部分 如果表达式分配给ngIf计
  • Chrome 中的滚动到视图

    I use var el document getElementById centd el scrollIntoView true 滚动到特定位置 在每个浏览器中它都工作正常 但在 Chrome 中 当页面加载时 它会滚动到该点 但在一两秒
  • 接收器停止接收奥利奥

    我了解服务等受到限制 因此我的接收器已停止在 Android Oreo 中工作 我有这段代码启动服务 Intent intent new Intent this MyService class intent putExtra Time lo
  • 从 Docker buildkit 获取容器 ID 以进行交互式调试

    众所周知 您可以运行docker commit针对失败的构建过程拍摄容器快照以用于调试目的 容器 ID 是从running in
  • 从本地文件更新 MySQL 表

    我的数据库中有一个表 我想更新本地文件上脱机的列 文件本身有两列 与表中的 ID 列相对应的 ID 以及 实际值 我已经能够使用创建新行 LOAD DATA INFILE file txt INTO TABLE table FIELDS T
  • 三星 Galaxy SIII (GLES) 中的噪声算法失败

    我正在努力让下一个简单的算法在 Samsung Galaxy SIII 中运行 float rand vec2 co return fract sin dot co xy vec2 12 9898 78 233 43758 5453 vec
  • Python:根据对象的属性对对象列表进行排序[重复]

    这个问题在这里已经有答案了 作为序言 我已经查看了与这个问题相关的帖子 但他们还没有完全回答我的问题 所以我只想知道如何通过两种方式根据对象的属性对对象列表进行排序 如果属性是字符串 按字母顺序排列 如果属性是整数 按数字顺序执行 这是我的
  • Eclipse 执行错误的 Java 文件

    我正在使用 Eclipse 来编写和测试 Java 我是一个初学者 所以我对Eclipse一无所知 当我尝试运行我刚刚编写的 Java 文件时 就会出现问题 它不执行打开的文件 而是执行我之前成功运行的文件 我在同一个默认包中有几个文件 包
  • Mac OS Mojave 上的 Ruby 2.4:找不到图像...与 openssl.bundle 相关

    所以我在 Mac OS Mojave 上将 Ruby 升级到了 2 4 9 我在安装 gem 时遇到问题 proj gem install google cloud vision ERROR Loading command install
  • Python - 用于将文本拆分为句子的正则表达式(句子标记化)[重复]

    这个问题在这里已经有答案了 我想从字符串中列出句子 然后将其打印出来 我不想使用 NLTK 来执行此操作 因此 它需要在句子末尾的句点上分割 而不是在小数点或缩写或名称标题上分割 或者如果句子有 com 这是对正则表达式的尝试 但不起作用
  • .NET 验证码 https

    我们已经开始使用 ASP NET recaptcha 控件 它运行良好 但我们的要求之一是所有出站流量都通过 HTTPS 我知道 recaptcha 支持 https 但不清楚在使用 ASP NET 插件选项时如何配置 或者即使它是可配置的