小编Ben*_*Ben的帖子

使用jQuery ajax表单提交,ValidateAntiForgeryToken失败

我有一个HTML表单,我动态添加一个文本字段,并通过jQuery对ASP.NET MVC控制器执行该表单的POST请求.

如果我在控制器操作上调用没有ValidateAntiForgeryToken属性的POST请求,它可以正常工作.但是,当我将ValidateAntiForgeryToken属性添加到操作时,我得到以下异常:

"未提供所需的防伪标记或无效."

有没有人想到为什么会这样?

需要注意的是,cookie中的令牌ID似乎与表单中呈现的令牌完​​全不同.为什么这些会有所不同?

那个行动:

[AcceptVerbs(HttpVerbs.Post)]
[ValidateAntiForgeryToken]
public string MyAction(Guid id, Dto dto)
{            
  //return JSON;
}  
Run Code Online (Sandbox Code Playgroud)

表格(呈现):

<form id="slider" class="fc" method="post" action="/controller/myaction/" name="tabEdit">
  <span id="slider_previous" class="sprite" tabindex="0" title="foo">Previous</span>
  <input type="hidden" value="mzyg7UWQrHwafoSuoJBvwfraQEtCTAmM9QHYeyMSrAHFHG10BNXM+I2yNgz8zQ8yu/E43eF3yMuHX7YIQwmK3Q==" name="__RequestVerificationToken"/>
  <div id="sliderWrap" style="width: 31.243%;">
    <ul class="sliderList">
      <li id="ID_3d031daf-a7f9-46f2-b4b9-7c9fc6560e3d">
      </li>
      <li id="ID_78b61634-d88a-4f33-8e48-e0655ad8a958" class="current">
        <input class="sliderInput" type="text" value="" name="Bar"/>
        <a class="sprite" href="/a/b/78b61634-d88a-4f33-8e48-e0655ad8a958">Delete</a>
      </li>
    </ul>
  </div>
<span id="slider_addNew" class="sprite" tabindex="0" title="Add new">New</span>
<span id="slider_next" class="sprite" tabindex="0" title="See next">Next</span>
</form>
Run Code Online (Sandbox Code Playgroud)

渲染防伪标记的原始视图:

<form id="slider" class="fc" method="post" action="/controller/myaction/" name="tabEdit">
<%=Html.AntiForgeryToken(OurNamespace.MVC.Constants.SaltValue) %> …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc antiforgerytoken

4
推荐指数
1
解决办法
3648
查看次数

ASP.NET中web.config文件的替代方法

根据我的经验,web.config文件受到广泛谴责.特别是,当您有多个支持环境时,我发现它们很难管理,并且由于缺少更新时的验证和XML的冗长而需要更新.

有哪些替代方案?

asp.net web-config

4
推荐指数
1
解决办法
1941
查看次数

IIS托管的Web应用程序中的静态变量

如果我声明在IIS中托管的ASP.NET应用程序中实例化的类型中的静态字段是IIS使用的所有工作线程使用的相同变量(即相同的内存位置),那么会导致并发问题?

asp.net iis multithreading static-variables

4
推荐指数
1
解决办法
2658
查看次数

IOC容器类型分辨率和注入位置

最好的做法是在域模型的边缘解析和注入具体类型,然后通过域下载这些类型?例如,让容器将具体类型注入Web应用程序中的MVC控制器构造函数或基于服务的应用程序中的服务端点?

我对容器对象图形连线的理解有点松懈.

是否适合在域中执行等效的Container.Resolve()?

dependency-injection

4
推荐指数
1
解决办法
107
查看次数

显示来自 javascript Chrome 书签的提示

我想创建一个 chrome bookamrk,提示用户输入一个值(然后在 cookie 中设置该值)。

我无法显示提示。有没有办法做到这一点?

当前代码:

javascript:(function(){var days=window.prompt("Number of days", "d"); var daysInHours=   24*days; document.cookie='clockoffset=PT' + daysInHours + 'H0M';})()
Run Code Online (Sandbox Code Playgroud)

javascript bookmarks google-chrome

4
推荐指数
1
解决办法
5243
查看次数

整数算术加法和减法在什么范围内精确到IEEE双精度浮点的整数?

根据维基百科的IEEE 64位浮点标准:

在2 52 = 4,503,599,627,370,496和2 53 = 9,007,199,254,740,992之间,可表示的数字正好是整数.对于下一个范围,从2 53到2 54,所有内容都乘以2,因此可表示的数字是偶数,等等.

这是否意味着连续的整数最多可以表示为2 53

总之,我试图找到整数值的范围,整数加法和减法操作将导致完全正确的结果.

floating-point

4
推荐指数
1
解决办法
97
查看次数

为什么AngularJS在其isArray函数中不使用instanceof?

来自AngularJS isArray来源:

return toString.call(value) === '[object Array]';
Run Code Online (Sandbox Code Playgroud)

为什么不跟他们一起去?

return value instanceof Array;
Run Code Online (Sandbox Code Playgroud)

javascript arrays angularjs

4
推荐指数
1
解决办法
592
查看次数

在Angular中强制摘要

在用户操作之后的某个时刻,我想使摘要发生,因此UI反映了支持它的数据模型的变化.

我有一个服务,在回调中执行一些更改(异步).

我理解$scope只有在控制器的上下文中才有意义.我可以通过表演$apply()来达到同样的效果$rootScope吗?

我看过检查$$phase或类似的代码与避免摘要错误相关,我应该执行哪些检查才能安全地触发摘要?

angularjs

4
推荐指数
1
解决办法
4358
查看次数

gulp-load-plugins没有加载插件

gulp-load-plugins没有加载任何插件.任何人都可以建议为什么会这样?

Node: v0.12.0
NPM: v2.7.3
Run Code Online (Sandbox Code Playgroud)

我的package.json:

{
  "name": "foo",
  "version": "0.0.1",
  "dependencies": {},
  "devDependencies": {
    "gulp": "^3.8.11",
    "gulp-load-plugins": "^0.9.0"
  }
}
Run Code Online (Sandbox Code Playgroud)

我的gulpfile.js:

var gulp = require('gulp');
var gulpLoadPlugins = require('gulp-load-plugins');
var plugins = gulpLoadPlugins();

console.log(JSON.stringify(plugins)); // {}

gulp.task('default');
Run Code Online (Sandbox Code Playgroud)

javascript gulp gulp-load-plugins

4
推荐指数
2
解决办法
1万
查看次数

Node.js 如何将脚本加载到内存中?

在浏览器中,将按照定义的顺序解析 DOM 并加载和解析脚本。

在 Node.js 中,脚本是如何加载到内存中的?

require初始化时是否遍历了每个文件中的语句定义的整个脚本图,以及生成的对象和值填充堆栈和堆以准备开始执行?

javascript node.js

4
推荐指数
1
解决办法
1380
查看次数