1.由于Razor Pages自带提供防伪令牌/验证,用来防止跨站点请求伪造(称为XSRF或CSRF),所以和MVC框架中API使用方式有稍许的不同。

2.所以在我们使用Razor Pages中的form表单提交数据时,框架会自动帮我们生成一个隐藏的Input,并在我们提交表单时加入在请求报文头中。

<input name="__RequestVerificationToken" type="hidden" value="CfDJ8P-uB18ojyNBnPHyBPpQMcjMi3bb01uB9VeJk0C6GO2bVdSnt7aSGr63GOKObkLt7HBZqhVPvlmS9GLn8-To2XHw5F1L3ARqXFsXQhqpMSnuVSRBpYkZo6-7Gtv3CJrUTR6uRZdEh5ZwKsLpZSqdZEs" />

3.然而我们使用AJAX向一个post方法提交数据时,就会发现服务器端返回400状态码,这是因为我们在请求头并未携带token过去,所以我们应该这样写

 @Html.AntiForgeryToken()    //在html页面上生成隐藏的input,token就存放在里面,当然要是你的页面上有form表单也就不用写上这个
 $.ajax({
method: 'post',
url: "/?handler=Data",
headers: {
RequestVerificationToken:
$('input:hidden[name="__RequestVerificationToken"]').val()
},
success: function (data) {
console.log(data);
}, error: function (error) {
console.log(error);
}
})

最新文章

  1. 记一次使用openrowset 的坑
  2. 微软曝光眼球追踪新专利,未来或将可以使用眼球控制HoloLens
  3. BootStrap Progressbar 实现大文件上传的进度条
  4. hibernate_validator_07
  5. 开源语音识别系统 Simon
  6. Javascript多线程引擎(六)
  7. iOS基础 - Quartz 2D绘图的基本步骤
  8. HDU 1008 u Calculate e
  9. [ext4]03 磁盘布局 – Flexible group分析
  10. 201521123018 《Java程序设计》第1周学习总结
  11. WPF之ViewModel
  12. SpringMVC和Struts2的比较
  13. 软件测试实验四----mujava变异测试
  14. 详解slab机制
  15. 【学习笔记】深入理解HTTP协议
  16. ceph PG数量调整/PG的状态说明
  17. import sys
  18. hadoop参数传递
  19. 用EL時(el-api.jar,el-ri.jar ),要設isELIgnored="false"
  20. Linux-支持中文

热门文章

  1. Django Form 的主要内置字段介绍
  2. STP:生成树协议解决网络冗余问题
  3. (八)OpenStack---M版---双节点搭建---Cinder安装和配置
  4. Transformer---GPT模型
  5. html 后手
  6. 初识v4l2(五)-------v4l2_ioctl浅析
  7. i++和++1
  8. HTML与CSS学习笔记(3)
  9. JS onFocus和onBlur
  10. Oracle告Google输了