HTTP Status 403 - Invalid CSRF Token 'null'
24477 단어 js
: !
Status 403-forbidden Type Status Report Message Invalid CSRF Token 'null'
수정 전
jsp
# js
<table style="width: 100%; font-size:12px;" border="0">
<tr>
<tdalign="left" style="padding-left: 10px;height:25px;width: 99%"> :
<!-- -->
<input id="handle_file" onchange="checkFileType('handle_file')" name="handle_file" type="file">
<font color=red> :xls,xlsx,doc,docx,pdf,txt,jpg,gif,png,jpeg</font> <font color=red> 100M</font></td>
</tr>
</table>
실현 을 요구 하 다
# javascript
/**
* 、
* :xls,xlsx,doc,docx,image,pdf,txt
* :100M
* @param objId id
*/
function checkFileType(objId){
var fileSize = 100 * 1024 * 1024;//
//
var fileName = $('#' + objId).val();
if(fileName == undefined || fileName == null || fileName == ""){
return;
}
if(fileName.indexOf("&") != -1 || fileName.indexOf("?") != -1){
$.messager.alert(' '," ? & !",'info');
$('#' + objId).val("");
return;
}
var fileFilter = "xls,xlsx,doc,docx,pdf,txt,jpg,gif,png,jpeg";
var extention = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase();
if (fileFilter.indexOf(extention) < 0) {
$.messager.alert(' '," " + extention + " !",'info');
$('#' + objId).val("");
return;
}
//
var fs = 0;
try {
if (window.ActiveXObject) {
//IE
var image = new Image();
image.dynsrc = fileName;
fs = image.fileSize;
} else {
fs = $('#' + objId)[0].files[0].size;
}
} catch(e) {
}
if (fs > fileSize) {
$.messager.alert(' '," " + fileSize/1024/1024 +"MB !",'info');
$('#' + objId).val("");
return;
}
}
# javascript
var fileElementId = "handle_file";
$.ajaxFileUpload({
url: basePath+"/submit",
secureuri : false,
dataType : 'json',
fileElementId : fileElementId,
data:{
k1: v1,
k2: v2,
},
success : function(resource)
{
}
수정 후
# javascript
#new File([], '') File
var data = new FormData();
data.append("key","value");
data.append("handle_file", $('#handle_file')[0].files[0] : new File([], ''));
.
.
.
$.ajax({
type: "GET"/"POST",
url: basePath+"/submit",
data: data,
success:function(resource){
}
});
# Java Controller
@ResponseBody
@RequestMapping(value="/submit", produces = "text/html; charset=utf-8")
public String submitSJ(HttpServletRequest request, @RequestParam(required=false) CommonsMultipartFile handle_file) {
if (!handle_file.isEmpty()) {
logger.info(" :" + path);
File f = new File(path);
if (!f.exists()) {// ,
f.mkdirs();
}
FileOutputStream fos = new FileOutputStream(path + handle_file.getOriginalFilename());
InputStream fis = handle_file.getInputStream();
byte[] b = new byte[1024];
int len = 0;
while ((len = fis.read(b)) > 0) {
fos.write(b, 0, len);
}
fos.close();
fis.close();
}
return JSONObject.fromObject("{success:true,data:obj}");
}
끝..
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[2022.04.19] 자바스크립트 this - 생성자 함수와 이벤트리스너에서의 this18일에 this에 대해 공부하면서 적었던 일반적인 함수나 객체에서의 this가 아닌 오늘은 이벤트리스너와 생성자 함수 안에서의 this를 살펴보기로 했다. new 키워드를 붙여 함수를 생성자로 사용할 때 this는...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.