问题标签 [request-validation]

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 投票
1 回答
1237 浏览

c# - 如何与异步 foreach 和 IAsyncEnumerable 一起返回 ActionResult

我有这个签名的控制器方法:

它工作正常,但我需要做一些请求验证并相应地返回 401、400 和其他代码,它不支持。或者,以下签名无法编译:

错误:

无法将类型“Microsoft.AspNetCore.Mvc.UnauthorizedResult”隐式转换为“MyApi.Responses.MyDto”

完整的方法:

有任何想法吗?似乎无法相信微软已经设计IAsyncEnumerable为在没有返回其他任何东西的可能性/灵活性的情况下使用。

0 投票
1 回答
1013 浏览

php - Laravel 请求验证对象

我想过滤来自 API 有效负载的一些数据,我必须在其中检查数据的某些部分是否是对象,例如:

我想确定来自有效负载的“对象”实际上是一个对象,它包含属性而不是整数,也不是数组或任何其他类型......而是一个对象。有什么办法可以通过使用 Laravel 的本机验证器来解决这个问题,我必须创建一个自定义规则?

谢谢

0 投票
0 回答
54 浏览

php - 类 App\Http\Requests\MyCustomRequest 不存在 - Laravel 6

应该发生什么 更新我的模式或至少访问此方法应该没有问题。

问题:我不知道为什么每次提交表单时都会出现 class not found 错误。

我的控制器文件App\Http\Controllers\ProductController.php

我的请求文件类App\Http\Requests\UpdateProductRequest.php

0 投票
1 回答
51 浏览

php - 验证后挂钩未重定向到表单页面

我正在使用 laravel 7 为我的表单构建一个小型验证器,我需要在标准验证之后添加一个自定义逻辑,所以我使用了doc中的 after validation hook 。我的问题不在于控制器的逻辑,而是在验证发生之后我添加了自定义错误消息,我没有被重定向到原始表单。我错过了什么?

0 投票
1 回答
1383 浏览

python - 使用 webargs 验证 AWS lambda 中的查询字符串参数和请求正文

我试图找出验证使用 AWS API 网关创建并由 Python Lambda 函数支持的 API 的查询字符串参数的方法。API Gateway 可以验证是否存在所需的查询字符串参数。但是,我找不到其他验证的方法,例如确定某个参数的长度是否在某个限制范围内(例如 config_id 至少应为 7 个字符长)。使用 API Gateway 请求验证可以对请求正文进行此类验证。参考这个链接。但是,对于查询字符串参数,仅需要/不需要验证是可能的,因为它不使用任何 json 模式进行验证。

因此,为了克服这个问题,我决定尝试Python 中的 webargs 模块来验证查询字符串参数。它通常用于对使用 Python 框架(如 flask 或 django)创建的 API 进行请求验证。我正在使用核心解析器(请参阅webargs doc),如下所示:

这就是在 lambda 函数中完成验证的方式。但是,只有所需的验证才能正常工作。当我传递长度为 5 的 config_id 时,它不会返回任何错误并在 lambda 函数中继续进行。

这可能出了什么问题?解析器似乎工作,但是,验证功能没有。任何帮助表示赞赏,因为我是新手。此外,是否有更好的方法在 lambda 函数中进行验证,尤其是对于 queryStringParameters?它可以由代码处理,但我们可以有许多参数和许多 API,这使得为所有此类验证编写代码成为一项繁琐的任务。webargs 模块派上用场了。

0 投票
1 回答
362 浏览

laravel - Laravel 验证请求过滤器字段,字段名称中带有点(句点)

这是在 laravel 中验证表单请求,请求包含过滤器,过滤器中的字段名称存在句点(点)。

样品请求网址

...?filter[entity.abc][]='value'

这里 entity.abc 实际上是一个字符串,但是当为 'filter.entity.abc' 给出规则时,laravel 认为它是对象数组

这实际上是

所以我们需要为第二个点制作正则表达式,相当于:

以上总是返回 true,即使存在无效的 uuid

0 投票
1 回答
311 浏览

laravel - Laravel 请求验证不适用于邮递员请求

对于以下请求,当正文参数作为 JSON 发送时,它总是验证请求(因为没有触发验证规则),但是当以 form-data 或 form-urlencoded 发送时,它会通过验证规则。这是 Laravel 的限制吗?

0 投票
0 回答
404 浏览

amazon-web-services - AWS API Gateway 错误 - [429] 已达到此 API 的最大请求验证器数量

我正在为我的 API 使用 AWS API Gateway 请求验证功能。您可以在此处的文档中查看更多详细信息。为了部署 API,我使用了无服务器框架。以下是serverless.yml的片段。

端点由 lambda 函数支持,定义如下:

到目前为止,我有 8 个实体,每个 REST 方法有 5 个端点——POST、GET ID、GET All、PUT、PATCH。其中,请求验证器已附加到方法 POST、PUT 和 PATCH。因此,共有 24 个端点使用请求验证器。

在运行无服务器部署时,我收到以下错误消息:

配额文档页面没有提到请求验证器数量的具体限制。另外,我打算有更多的方法,但是,似乎我已经使用请求验证器达到了 24 个函数的限制。

如何绕过此限制并确保无服务器部署命令不会失败?另外,有人知道允许多少个请求验证器吗?

帮助将不胜感激!提前致谢!

0 投票
1 回答
198 浏览

asp.net-core - 即使没有明确的 [AutoValidateAntiforgeryToken],是否也会自动添加防伪令牌?

语境

我注意到,在 VS 2019 中从其开箱即用的模板创建新的 ASP.NET Core Razor 页面应用程序后,即使是具有最纯粹模型类的最纯粹的html 表单也会呈现输出<input name="__RequestVerificationToken" type="hidden" value="...">

问题

我是否遗漏了什么,并且在某处有一个明确的属性/语句指示 ASP.NET Core 添加防伪,或者现在这是默认设置?(这使得使用[AutoValidateAntiforgeryToken]过时)

...或者...

它只是<input name="__RequestVerificationToken" type="hidden" value="...">总是无条件呈现的,并且[AutoValidateAntiforgeryToken]我可以打开服务器端验证吗?这种情况下,如果验证有效与否,我该如何进行吸烟测试?

示例代码

0 投票
1 回答
63 浏览

java - 在 Springboot 中进行请求验证时,响应不符合预期

我正在尝试使用 hibernate-validator 验证 json-resquest,它按预期工作,但邮递员中没有响应。

客户.java

Errors 类- 将错误包装在一个对象中。

ControllerAdvice 类

客户控制器.java

Hibernate-validator 已经添加了 pom.xml ,我期待以下原因。

邮递员请求 我正在尝试获得正确的响应正文,但在邮递员中找不到它。