• asp.net mvc与asp.net core Ajax删除操作delete中带ValidateAntiForgeryToken实例


    ValidateAntiForgeryToken ajax

    [ValidateAntiForgeryToken]

    为防止CSRF,asp.net core会在form中自动注入一个隐藏域防止攻击

    自动加入:

    <form asp-action="create">

    </form>

    或者使用beginform自动加入隐藏域

    @using (Html.BeginForm("ChangePassword", "Manage")) { ... }

    或手动加入:

    <form method="post" action="create">

    @Html.AntiForgeryToken()

    </form>

    隐藏域代码大致如下:

    <input name="__RequestVerificationToken" type="hidden" value="CfDJ8NrAkS ... s2-m9Yw">

    在asp.net或asp.net core mvc中,对于删除操作,微软加了token,这样的好处是防止跨站攻击,但如果用平常的ajax删除操作执行时会返回500错误,因此需要加入token进行删除,核心代码实现如下

    以下是两种方法实现均可,url根据自己情况填写:

    第一种:将token加到form里和数据一起提交

    第二种方法加到headers里,在头标识中加入:url可根据自己情况修改

    推荐使用此方法

    微软官方参考:https://github.com/aspnet/AspNetCore.Docs/blob/master/aspnetcore/security/anti-request-forgery/sample/MvcSample/Views/Home/Ajax.cshtml

  • 相关阅读:
    c++ 左值和右值
    C++的顶层const和底层const的理解
    TCP/IP模型中的网络层
    有关TCP/IP模型中的网络接入层
    计算机网络协议与IPv4地址
    浅析计算机网络
    海思Android开发平台如何自定义update.zip内容
    Android平台RTL蓝牙适配偶现打不开问题调试笔记
    Android的SoundPool
    Android开发之IntentService
  • 原文地址:https://www.cnblogs.com/zxdz/p/13070823.html
Copyright © 2020-2023  润新知