[jsp] jsonp 테스트
* 서버 JAVA 소스
@RequestMapping(value = "/main/jsonp", method = RequestMethod.GET)
@ResponseBody
public String jsonpTest(@RequestParam String id, @RequestParam String callback) {
Map<String, String> paramMap = new HashMap<String, String>();
paramMap.put("id", id);
paramMap.put("result", "success");
String result = null;
ObjectMapper mapper = new ObjectMapper();
try {
result = mapper.writeValueAsString(paramMap);
} catch (JsonGenerationException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(result);
return callback + "(" + result + ")";
}
* 클라이언트 JSP 소스
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
});
function getJsonTest1() {
$.getJSON("http://www.domain.com/webtest2/main/jsonp?id=user&callback=?",
function(data) {
alert(data.id + ", " + data.result);
}
);
}
function postJsonTest2() {
$.ajax({
type : "GET",
url : "http://www.domain.com/webtest2/main/jsonp",
data : "id=kyu",
dataType : "jsonp",
success : function(json) {
alert(json.id + ", " + json.result);
},
error : function(e) {
alert("error");
}
});
}
</script>
<a href="javascript:postJsonTest2();">
<a href="javascript:getJsonTest1();">test1</a> <br />
<a href="javascript:postJsonTest2();">test2</a> <br />
</a>
* 테스트 결과
[jsp] jsonp 테스트
'programming > jsp' 카테고리의 다른 글
[웹폰트] 본고딕 웹폰트 적용하기 (0) | 2018.01.22 |
---|---|
[jsp] jsp 파일 변경 (0) | 2017.09.25 |
[jsp] 업로드 버튼 file 숨기기 (0) | 2016.12.04 |
[jsp] to the cache because there was insufficient free space available after evicting expired cache entries - consider increasing the maximum size of the cache (0) | 2016.12.02 |
[jsp] P3P 쿠키 사용 설정하기 (0) | 2015.06.08 |