问题标签 [user-input]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
4619 浏览

model-view-controller - 用户输入在 MVC 架构中来自哪里?

我想知道控制器从哪里获取用户输入(以提供模型)。因为输入媒体与用户密切相关,视图不应该知道获取用户数据的具体方式吗?但是我怎样才能将控制器与视图分开呢?是否有可能使两者完全独立,如它们的目的所暗示的那样?

示例: 当我有一个使用 curses 库作为视图的应用程序时,这意味着它只能通过终端访问。在控制器中使用 curses 方法读取用户数据会破坏封装,但在视图上调用方法与显示模型无关。

0 投票
2 回答
1090 浏览

email - 使用服务器应用程序处理电子邮件

恐怕这是一个非常笼统的问题,但不幸的是,我的问题正是如何深入了解这个特定问题的“细节”。让我更具体一点:

我想创建一个“电子邮件侦听器”应用程序——它将在我的服务器中运行,以便用户可以向特定地址发送电子邮件,并且该应用程序将获取电子邮件并对其内容进行处理。换句话说,我想使用普通的电子邮件作为用户输入的方法

你可能知道记住牛奶。它具有一项功能,您可以将任务通过电子邮件发送到特定地址,并将其添加到您的任务列表中。我想知道这是如何“在幕后”完成的。

对于答案,一般概念和文章很好,但您显然可以指向特定于技术的资源,因为它们可以“逆向工程”,因此可以提取概念。提前致谢!

0 投票
4 回答
2930 浏览

php - php中的白名单

我为用户输入了他们应该输入电话号码的输入。问题是有些人用连字符和空格写他们的电话号码。我想通过过滤器输入输入以删除此类内容并仅在我的数据库中存储数字。

我想我可以为空格和特殊字符做一些 str_replace() 。但是我认为更好的方法是只挑选数字而不是删除其他所有内容。我想我听说过“白名单”这个词。

你能指点我在PHP中解决这个问题的方向吗?

示例:我希望输入“0333 452-123-4”产生“03334521234”

谢谢!

0 投票
3 回答
7750 浏览

php - 使 Web 表单输入在各种情况下安全的正确方法是什么?

你们都认为什么是正确的(阅读:最灵活、松散耦合、最健壮等)使来自 Web 的用户输入安全地用于 Web 应用程序的各个部分的方法?显然,我们可以为每个上下文(数据库、屏幕显示、磁盘保存等)使用各自的清理功能,但是是否有一些通用的“模式”来处理不安全的数据并使其安全?是否有一种既定的方法可以强制将其视为不安全,除非它被适当地安全化?

0 投票
7 回答
5100 浏览

c++ - 如何对控制台输入类进行单元测试?

在我的一个应用程序中,我有一个负责用户输入的类。默认的输入方法是控制台(键盘),我想为它写一些单元测试以确保它是正确的。

我正在考虑使用google-test框架进行单元测试,这使得自动化所有测试变得容易。但是,我不确定如何自动测试控制台输入。

有什么方法可以模拟键盘上的用户输入吗?还是我必须手动输入我的测试输入?或者可能重定向stdin(在运行单元测试时在代码中或通过管道)?

编辑:我计划使用 GNU readline 进行用户输入。目前我看不到任何重定向这个库的输入流的方法——也许其他人有这方面的经验?

0 投票
3 回答
892 浏览

html - 用于类似 wiki 的标记的正则表达式转换

考虑以下标记输入:

这通常编码为:

我的问题:

  • 对于使用单行的相同输入,什么是好的表示?
  • 生成相应 XHTML 的正则表达式是什么?

例如,单行输入格式可以是:

带有>作为无序列表项的分隔符。我选择>是因为文本可能包含典型的标点符号。使用 »(或其他类似的非 104 键键)会很有趣,但输入起来并不容易。

行输入格式也可以是:

更新 #1 - 问题更简单一些。巢的数量可以限制为三个。n 级深的通用解决方案仍然很酷。

更新 #2 - XHTML,而不是 HTML。

更新 #3 - 另一种可能的输入格式。

更新 #4 - Java 解决方案(或纯正则表达式)是最受欢迎的。

更新#5

修改后的代码:

打印以下内容:

0 投票
1 回答
1303 浏览

php - 如何在 PHP 中执行基于白名单的 CSS 过滤

我正在一个网站上工作,我想让用户能够输入自定义 CSS 并将其公开显示。

但是,由于可以通过 CSS 执行大量 XSS 攻击,我希望能够找到一种“清理” CSS 输出的方法,类似于HTML Purifier的工作方式,通过解析 CSS,运行解析的 CSS针对白名单,然后根据已解析和列入白名单的 CSS 输出新样式表。

那里已经有这样的图书馆了吗?如果没有,是否有可用于创建自定义实现的 CSS 解析库?

0 投票
5 回答
312 浏览

security - TDD 能否成为过度杀伤数据验证的有效替代方案?

考虑以下两种数据验证场景:

到处检查一切

确保每个接受一个或多个参数的方法都实际检查它们以确保它们在语法上是有效的。

优点

  • 非常精细的检查粒度。
  • 如果正在编写的代码是针对某种库的,我们会确保限制在使用它的开发人员未能提供有效数据时可能造成的损害。

缺点

  • 总是执行大多数时间不需要的检查是昂贵的。
  • 仍然有可能不时忘记添加支票。
  • 正在编写更多代码,因此需要维护。

利用 TDD 的优点

仅在数据从外部世界输入您的代码时验证数据。为了确保内部数据在语法上总是正确的,请创建测试来检查每个返回值的方法。确保如果输入有效数据,则退出有效数据。

利弊实际上与前一种方法的利弊互换了。

到目前为止,我正在使用第一种方法,但是由于我正在使用测试驱动开发,我想也许我可以使用第二种方法。

优点很明显,不过,我想知道它是否像第一种方法一样安全

0 投票
8 回答
4070 浏览

c - 如何在C中按字符/按数字读取输入字符?

我有一个文本文件,其中可能包含数千个数字(0-9 --> 个位)/字符,例如:13612371029301276312357829031029352131265309182765236728726355263789120938728...(继续这样)

在 C 中,如何将它们读入一个数组,以便每个数字单独存储?我的意思是存储后,array[0]=1 array[1]=3 array[2]=6... 以此类推[每个数字单独读取,这不是一个大数字而是数字的集合,输入时没有任何类型的空间]

我想你现在明白我的意思了......如果数字没有分隔符,我该如何存储它们?


这是一个改写:

我有一个包含大量数字的文件:~10^8 位没有任何分隔符:

该文件将如下所示: 127389472397413417398410274812371972398748263718238421389410923409234109329413413413241341 ......然后继续

我想逐位读取文件。我如何在C中做到这一点?

0 投票
2 回答
1765 浏览

vb6 - 嵌套输入框 If 语句

这可能是一个简单的问题,但是如果我需要在一个子的开头收集数据,使用几个输入框,其中哪一个是正确的方法?

示例 1:

示例 2: