1.ajax上传图片javascript
Document
upload
$(function () {
$("#upload").click(function () {
var formData = new FormData();
formData.append('file', $('#file')[0].files[0]);
$.ajax({
url: 'http://xxx/uploadFile',
type: 'POST',
cache: false,
data: formData,
processData: false,
contentType: false
}).done(function(res) {
}).fail(function(res) {});
});
});
2.ajax跨域
在服务器接收时,只需在response添加响应头Header("Access-Control-Allow-Origin", "*")便可html
如:java
java:jquery
@RequestMapping(value = "/uploadFile")
@ResponseBody
public String saveApplication(HttpServletRequest request, HttpServletResponse response) {
response.setHeader("Access-Control-Allow-Origin", "*");
String result = "success";
FileUpload fileUpload = new FileUpload();
UserFile userFile = fileUpload.fileUpload("file", request, response);
System.out.println(userFile);
return result;
}===================================================================
ajax跨域解决,方式2,jsonp方式ajax
前台:
spring
$(function() {
$.ajax({
type : 'get',
async: false,
url : '/huodong/middleSchoolActivity',
dataType : 'jsonp',
jsonp: 'jsonpCallback',
jsonpCallback:'jsonpCallback',//让后台jsonpCallback参数固定为所填的值,不然是随字字符串
success : function(result){
console.log(result.result);
console.log(result.data);
},
complete: function(XMLHttpRequest, textStatus){
},
error : function(json,XMLResponse){
result = "返回信息:" + json + "错误码:" + XMLHttpRequest.status;
console.log("错误信息:" + result);
}
});
});
后台,java springmvc
@RequestMapping(value = "/xxx")
@ResponseBody
public String xxx (String jsonpCallback) {
Map dataMap = new HashMap();
String result = "success";
try {
List> activityList = new ArrayList>();
//TODO
dataMap.put("data", activityList);
}
catch (NumberFormatException e) {
e.printStackTrace();
result = "error";
}
dataMap.put("result", result);
String resultStr = com.alibaba.fastjson.JSONObject.toJSONString(dataMap);
return jsonpCallback + "(" + resultStr + ")";
}