.net8 mvc ValidateAntiForgeryToken 是預(yù)防跨網(wǎng)站請求偽造 (XSRF/CSRF)的特性,它會在view上自動生成個隱藏域
<input name="__RequestVerificationToken" type="hidden" value="CfDJ8NrAkS ... s2-m9Yw">
如上,通過value值來驗證是否為合法身份外盯。
如果是用kindeditor 上傳圖片等請求 默認(rèn)是沒有此身份的token值,需要手動添加這個參數(shù)。查了下kindeditor 的api,還真有擴(kuò)展參數(shù)愕把,如下:
F.ready(function () {
var editor_f_Info = KindEditor.create('textarea#' + editorid_f_Info+'-inputEl', {
width: '100%',
//其他代碼略....
//上傳圖片、Flash森爽、視音頻恨豁、文件時,支持添加別的參數(shù)一并傳到服務(wù)器爬迟。添加__RequestVerificationToken
extraFileUploadParams:{'__RequestVerificationToken':$('input[name="__RequestVerificationToken"]').val()},
});
});
mvc 后臺代碼完美兼容 [ValidateAntiForgeryToken], 無須更改kindeditor源碼
[HttpPost]
//[AllowAnonymous]
[ValidateAntiForgeryToken]
public IActionResult UploadFile(IFormFile imgFile,string dir)
{
.....
}
如果還想添加其他的參數(shù)橘蜜, extraFileUploadParams 可以寫多個參數(shù)。
參考:
https://learn.microsoft.com/zh-cn/aspnet/core/security/anti-request-forgery?view=aspnetcore-8.0
http://kindeditor.net/docs/option.html#extrafileuploadparams