Слияние кода завершено, страница обновится автоматически
Spring MVC: обработка JSONP для решения проблемы междоменного взаимодействия
JsonpAdvice
, который будет расширять возможности контроллера и наследоваться от класса org.springframework.web.servlet.mvc.method.annotation.AbstractJsonpResponseBodyAdvice
.package com.drore.jsonp.advice;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.servlet.mvc.method.annotation.AbstractJsonpResponseBodyAdvice;
@ControllerAdvice
public class JsonpAdvice extends AbstractJsonpResponseBodyAdvice {
public JsonpAdvice() {
super("callback", "jsonp");
}
}
@RestController
.package com.drore.jsonp.controller;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HomeController {
@RequestMapping(value="/render.json")
public List<Map<String, Object>> render(){
List<Map<String, Object>> list=new ArrayList<Map<String,Object>>();
for (int i = 0; i < 10; i++) {
Map<String, Object> map=new HashMap<String, Object>();
map.put("userName", "张三"+i);
map.put("sex", "男");
map.put("phone", "1598723212"+i);
list.add(map);
}
return list;
}
}
$.ajax({
url:'http://localhost:9090/render.json',
dataType:'jsonp',
success:function(data){
console.log(data)
}
})
Возвращаемые данные в формате JSON:
jQuery162036356921307742596_1442105501105([
{
"phone": "15987232120",
"sex": "男",
"userName": "张三0"
},
//......
]);
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )