- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 WCAT 对 ASP.NET MVC 应用程序执行负载测试。因为此应用程序使用防伪 token 安全验证,所以我想知道是否可以在 WCAT 脚本值中动态生成后数据值,以便在每次获得防伪 cookie 值时注入(inject)有效 token 。
有什么想法吗?提前致谢。
最佳答案
我确信它可以完成,但我不知道有什么方法可以编写 WCAT 交易脚本来生成有效的防伪 token 。
相反,我所做的是实现一个条件过滤器,它将 ValidateAntiForgeryTokenAttribute() 应用于我的所有 POST 操作。一旦你有了条件过滤器,你就可以添加一个 AppSettings 值,它允许你打开/关闭属性。即,当您进行负载测试时,您将其关闭。
您可以了解如何实现条件过滤器 here .
在我的项目中,我在 Global.asax.cs Application_Start() 中启用和禁用条件过滤器,如下所示:
bool useAntiForgeryToken = string.Compare(ConfigurationManager.AppSettings["useAntiForgeryToken"], "true", StringComparison.InvariantCultureIgnoreCase) == 0;
if (useAntiForgeryToken) {
// Ensure that all POST actions are automatically decorated with the ValidateAntiForgeryTokenAttribute.
IEnumerable<Func<ControllerContext, ActionDescriptor, object>> conditions =
new Func<ControllerContext, ActionDescriptor, object>[] {
(controllerContext, actionDescriptor) =>
string.Equals(controllerContext.HttpContext.Request.HttpMethod, "POST", StringComparison.OrdinalIgnoreCase ) ? new ValidateAntiForgeryTokenAttribute() : null
};
// Create the conditional filter using the condition we defined
var provider = new ConditionalFilterProvider(conditions);
// And add the conditional filter
FilterProviders.Providers.Add(provider);
}
我的 web.config 中有这样一个 AppSetting:
<appSettings>
<add key="useAntiForgeryToken" value="true">
</appSettings>
注意:除了禁用防伪 token 外,您还需要在 web.config 中将 requestValidation 模式设置为 2.0,如下所示 (reference):
<httpRuntime requestValidationMode="2.0">
一旦你准备好这些东西,再次运行你的 WCAT 脚本,你应该是黄金。
关于asp.net - 使用 WCAT 负载测试解决 ValidateAntiForgeryTokenAttribute(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18571821/
Microsoft的WCAT就像它 promise 的那样简单。不过,在Windows 7 x64上运行它并不是那么简单。包含的脚本文件中断,并且输出摘要的XML转换也使用仅MS的功能。 最佳答案 您
使用 WCAT 6.3,我想设置一个完全像这样的 http header ,包括围绕 ETag 的双引号: If-None-Match: "a52391cbf838cd1:0" 如何转义场景文件中的双
我在 Windows Server 2008 Std 上对 IIS 7 的 WCAT 6.4 的初始测试/配置遇到了问题。我们对 WCAT 还很陌生,所以这可能是一个相当幼稚的问题。 我们正在测试一个
我正在使用 WCAT 对 ASP.NET MVC 应用程序执行负载测试。因为此应用程序使用防伪 token 安全验证,所以我想知道是否可以在 WCAT 脚本值中动态生成后数据值,以便在每次获得防伪 c
我想在我的 Web 应用程序中运行 POST 操作之一的负载测试。问题是只有在 POST 数据中收到唯一的电子邮件地址时才能完成该操作。我生成了带有数千个请求的 wcat 脚本,每个请求都有唯一的电子
通过命令行在 Windows XP 机器上运行 WCAT 时,出现以下错误: error: must specify at least one of the following parameters
我是一名优秀的程序员,十分优秀!