问题标签 [misuse]

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 投票
12 回答
568 浏览

c# - 是否存在不依赖 IDisposable 的 Using 模式?

我想创建一个内部消息系统,可以告诉我调用某些代码的持续时间。我在考虑易于使用,使 SystemMessage 类实现 IDisposable。

我会在 SystemMessage 的构造函数期间设置一个时间戳,如果调用了 Dispose,我可以计算出持续时间。

问题是我不想让对象 GC'ed。我希望它作为 MessageCollection 的一部分保留。

C# 中是否有另一个构造可以让我使用 Using 语句的可用性,而无需踩到 IDisposable 的预期功能。

0 投票
2 回答
59 浏览

migration - 建立一个案例,以摆脱以从未打算使用的方式使用工具或技术

我见过一些非常奇怪的技术使用。

例如,我工作的一个地方是使用Microsoft 消息队列在服务器之间发送实时流式 VoIP 数据。

我是一名顾问,很多时候负责这些决定的人已经不在公司了。问题是,从非技术人员的角度来看,它工作得很好。当需要在这样的系统中添加功能和修复错误时,问题就出现了。

如果您处于这种情况,您将如何构建案例以花时间迁移到更合适的技术?

0 投票
2 回答
78 浏览

php - 担心潜在的正则表达式滥用?

我有以下正则表达式:^[a-zA-Z](.*)[a-zA-Z]$在 Javascript 和 PHP 端,我一直在使用它来验证联系人表单上的人名消息字段(无数据库交互)。它基本上确保字段中的第一个和最后一个字符是字母,并允许介于两者之间的任何其他字符。

我的担忧是:

  1. 对于这种类型的功能,我是否应该为尝试验证一个人的姓名或消息而烦恼?我唯一要验证或更确切地说要防止的是任何恶意输入。
  2. 如果我唯一要做的就是检查这些字段是否为空,我不确定我可以让我的网站对哪种类型的攻击开放。

这些是有效的担忧吗?如果我开始满足所有类型的名称和消息场景,我将得到一个非常长的表达式,这将变得难以维护......那么它真的值得吗,或者是否有一个最低限度的正则表达式我应该使用这两个字段来防止恶意攻击/脚本?

(PS - 我的一位同事刚刚提醒我名字以“ ”开头)

谢谢你!!

0 投票
5 回答
215 浏览

c++ - 防止滥用专为运输而设计的结构

我的产品有多个组件,其中大多数是用 C++ 编写的,但有一个是用 C 编写的。我们经常遇到这样的场景,即一条信息通过 IPC 流经每个组件。

我们使用结构定义这些消息,以便我们可以将它们打包成消息并通过消息队列发送。这些结构仅用于“传输”目的,并且以仅用于该目的的方式编写。我遇到的问题是:程序员坚持使用该结构并将其用作信息的长期容器。

在我看来,这是一个问题,因为:

1)如果我们改变传输结构,他们所有的代码都会被破坏。这里应该有封装,这样我们就不会遇到这种情况。

2) 消息结构非常笨拙,仅设计用于传输信息……这个结构似乎也不太可能碰巧成为这些其他组件访问此数据(长期)的最方便形式。

我的问题是:如何以编程方式防止这种误用?我想强制这些结构只能用于运输。

编辑:我会尽力在这里提供一个例子:

其效果是人们只是坚持“大元素”,而不是从大元素中提取他们需要的数据并将其放入满足他们需求的类中。

0 投票
1 回答
134 浏览

sqlite - 如何在我的 sqlite 查询的输出中使用相同的名称作为我在连接的 ON 子句中比较的值?

我原来的问题

当我在 SQLite 中执行以下查询时,我收到此错误:

查询错误:误用聚合:sum() 无法执行语句

当我将"Loan"列的名称更改为loan_amount错误消失并且我的查询工作正常时。为什么有问题"Loan"


中后期启示

我很确定我知道为什么会出现错误,是因为我"Loan"在与我的联接的 on-clause 进行比较吗?

如果是这样,我如何在查询输出中仍然使用“贷款”一词作为我的列名?

0 投票
1 回答
953 浏览

multithreading - Sqlite 线程模式和 sqlite 误用悖论

我有一个项目,我应该使用多个表来避免在我的 sqlite 文件中保留重复的数据(即使我知道使用多个表是一场噩梦)。

在我的应用程序中,我正在以某种方法从一个表中读取数据,并以某种其他方法将数据插入到另一个表中。当我这样做时,我从 sqlite step 函数中得到错误代码 21,这是 sqlite 误用。

根据我的研究,那是因为我无法从多线程访问表。

到目前为止,我阅读了 sqlite 网站并了解到配置 sqlite 数据库有 3 种模式:

1)单线程:你没有机会调用多个线程。
2)多线程:是的多线程;但也有一些障碍。
3)序列化:这是与多线程数据库应用程序的最佳匹配。

如果sqlite3_threadsafe() == 2 返回 true 那么是的,您的 sqlite 数据库已序列化,并且返回 true,所以我为自己证明了这一点。

然后我有一个代码来配置我的 sqlite 数据库以进行序列化以保证它。

当我在课堂上使用上面的代码时,我从 1 个表中读取和插入数据可以完美地工作:)。但是,如果我尝试在课堂上使用它,我从 2 个表中读取和插入数据(实际上是我真正需要它的地方),就会出现 sqlite 滥用问题。

我检查了我打开和关闭数据库的代码,它们没有问题。他们工作,除非我删除另一个。

我正在使用 ios5,这对我的项目来说确实是一个大问题。我听说instagram 使用postgresql 可能是这个原因哈?你一开始会建议 postgresql 还是 sqlite ?

0 投票
7 回答
144 浏览

c# - 在 C# 中构建一个数组

我无法让此代码为我工作:

我很确定我需要用其他东西替换 String[],但是什么?

0 投票
2 回答
100 浏览

c# - 除了使用 $_SESSION 还有什么选项

我正在开发一个 .net 项目,该项目依赖于在登录时从数据库中提取一些信息并在用户登录时保留这些信息。

该网站很复杂,但我觉得可能会出现过度使用 Session 变量的情况。我现在要说我正在使用 session 来存储大约 5 个 int 值和 3 或 4 个字符串值。我没有存储任何复杂的对象。我网站的每个页面都多次使用这些值,我觉得每次都发布它们是荒谬的。在这一点上,我也不认为 viewstate 比 session 更好,但我愿意接受建议。

会话变量的当前用法示例

我考虑过在一个类中实现一个结构并在那里有一个我在 Global.asax.cs 中使用的 set 方法Session_Start()可能是一种解决方案......

(编辑:此解决方案旨在避免每次任何代码想要访问变量时都必须敲击数据库)。

在 VendorSessionData.cs 类中

在 global.asax.cs 中

尝试使用母版页上的隐藏字段来攻击它会更好吗?我所做的每一次搜索都说“不要使用会话,不要使用全局变量..”基本上我有任何想法,有一些页面说明它是有史以来最糟糕的想法:)

任何建议,将不胜感激。

0 投票
1 回答
2635 浏览

android - android中的Sqlite聚合max(sum())错误

我正在尝试执行以下查询,但我误用了聚合函数 sum()

询问

LogCat 输出

有什么建议么 ?问候,兄弟

0 投票
2 回答
318 浏览

javascript - 如何以及在哪里定义角度 $http 默认值?

我正在尝试在角度应用程序上设置 $http 的默认值,所以我有:

这会引发错误。如何以及在哪里可以设置 $http 的默认值?