티스토리 뷰
[JAVASCRIPT] 자바스크립트 AJAX 외부 통신 크로스 도메인 해결 - CORS(Cross Origin Resource Sharing)
Grand_J 2020. 8. 27. 14:56[JAVASCRIPT] 자바스크립트 AJAX 외부 통신 크로스 도메인 해결 - CORS(Cross Origin Resource Sharing)
---------------------------------------- transport.jsp -----------------------------------------
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="java.io., java.net."%>
<%
// 요청 인코딩 변경
// request.setCharacterEncoding("utf-8");
try {
String paramUrl = request.getParameter("url");
// URL infoURL = new URL(paramUrl);
URL infoURL = new URL("www.naver.com");
InputStream inputStream = infoURL.openStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "utf-8");
StringBuffer sb = new StringBuffer();
int readByte;
while ((readByte = inputStreamReader.read()) != -1) {
sb.append((char) readByte);
}
inputStreamReader.close();
inputStream.close();
out.clearBuffer();
// 응답 ContentType 세팅
// response.setContentType("text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8; charset=utf-8");
out.print(sb.toString());
} catch (Exception e) {
e.printStackTrace();
}
%>
---------------------------------------- ajax호출 하여 transport.jsp 사용 ---------------------------
$.ajax({
type: "post",
url: ../transport.jsp?url=www.naver.com",
dataType: "text",
success: function(data) {
console.log(data)
}
});
---------------------------------------- transport.java -----------------------------------------
@RequestMapping("/")
@Controller
public class MainController {
@RequestMapping(value="/transport.json", method=RequestMethod.POST)
@ResponseBody
public String transport(HttpServletRequest request, HttpServletResponse response){
String paramUrl = request.getParameter("url");
String data = "";
try {
URL infoURL = new URL(paramUrl);
InputStream inputStream = infoURL.openStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "utf-8");
StringBuffer sb = new StringBuffer();
int readByte;
while ((readByte = inputStreamReader.read()) != -1) {
sb.append((char) readByte);
}
inputStreamReader.close();
inputStream.close();
data = sb.toString();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return data;
}
}
---------------------------------------- ajax호출 하여 transport.jsp 사용 ---------------------------
$.ajax({
type: "post",
url: ../transport.do?url=www.naver.com",
dataType: "text",
success: function(data) {
console.log(data)
}
});
끗!@#!@#!@#
'JSP & JavaScript' 카테고리의 다른 글
JQUERY 글자수, 글자 바이트 체크 (0) | 2020.12.02 |
---|---|
JSP 드롭다운 형식으로 년/월/일 생성 (0) | 2020.12.02 |
JQuery 페이지 로딩 처리 (0) | 2020.05.08 |
모의 해킹 테스트 차단 스크립트 (0) | 2020.04.21 |
JAVASCRIPT 날짜기준 ~개월 뒤 날짜 가져오기 ! (0) | 2020.03.25 |
- Total
- Today
- Yesterday
- 보성 여행
- 스쿠터 전국 일주
- 남자 혼자 여행
- 윈드스크린
- 국제반점
- 고흥 여행
- 군산 가볼만한곳
- 돌장갑
- 송내역 룸카페
- Docker
- 나래바이크
- 초원사진관
- vscode
- 리니지m
- 송내 카페
- 스쿠터 여행
- 베스파LX
- 군산 여행
- 송내역 카페
- 인터바이크
- 제주도 스쿠터 여행
- 영광 여행
- 군산 게스트하우스
- 은파호수공원
- 남자 혼자 국내 여행
- 담양 여행
- 전국 일주 여행
- 오라클 DB 링크
- kendo grid
- 송내 룸카페
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |