PageSourceSearch

https://www.woorisavingsbank.com/resources/common/foresys/requestUtils.js

js woorisavingsbank.com collected 2026-10-02 15:31:07 UTC 8,516 bytes, 220 lines download raw bytes

1var request = {
2	// post 방식의 ajax 호출
3	postAjax : function(
4		url
5		, params= {}
6		, success= function(){}
7		, error= function(response){ console.error(response.data.resultMsg); }
8		, showLoading= true
9		, thenFunc= function() {}
10	) {
11		if(showLoading) { uiUtil.showLoadingBar(); }
12		
13		console.log("req " + url, params);
14		
15		return $.ajax({
16			type: 'POST',
17			dataType: "json",
18			async: true,
19		    url: url,
20		    //data: params,
21			data: JSON.stringify(params),
22    		contentType: "application/json; charset=utf-8",
23		    success: function (response) {
24				if(showLoading) { uiUtil.hideLoadingBar(); }
25				
26				console.log("res " + url, response);
27				
28				success(response);
29			},
30		    complete: function (response) {
31				// 성공 실패 상관 없이 통신만 되면 해당 함수 실행
32				thenFunc(response);
33			},
34		    error: function(errorResponse) {
35				// 위 function 실행중 에러가 발생하거나, 네트워크 에러가 발생한 경우
36				if (errorResponse.response) {
37			      // 요청이 이루어졌으며 서버가 2xx의 범위를 벗어나는 상태 코드로 응답했습니다.
38			      console.error('요청이 이루어졌으며 서버가 2xx의 범위를 벗어나는 상태 코드로 응답했습니다.');
39			      console.log(errorResponse.response.data);
40			      console.log(errorResponse.response.status);
41			      console.log(errorResponse.response.headers);
42			    } else if (errorResponse.request) {
43			      // 요청이 이루어 졌으나 응답을 받지 못했습니다.
44			      // `error.request`는 브라우저의 XMLHttpRequest 인스턴스 또는
45			      // Node.js의 http.ClientRequest 인스턴스입니다.
46			      console.error('요청이 이루어 졌으나 응답을 받지 못했습니다.');
47			      console.log(errorResponse.request);
48			    } else {
49			      // 오류를 발생시킨 요청을 설정하는 중에 문제가 발생했습니다.
50			      console.error('오류를 발생시킨 요청을 설정하는 중에 문제가 발생했습니다.');
51			      console.log('Error : ', errorResponse.message);
52			    }
53			    //error({data:{'resultCd': '9999', 'resultMsg':'통신오류가 발생했습니다. 관리자에게 문의해 주세요.'}});
54				if(showLoading) { uiUtil.hideLoadingBar(); }
55				biz.Alert('통신오류가 발생했습니다. 관리자에게 문의해 주세요.', function(){});
56			}
57		})
58	},
59	// post 방식의 ajax 호출
60	postAjaxDefault : function(
61		url
62		, params= {}
63		, success= function(){}
64		, error= function(response){ console.error(response.data.resultMsg); }
65		, showLoading= true
66		, thenFunc= function() {}
67	) {
68		if(showLoading) { uiUtil.showLoadingBar(); }
69		
70		console.log("req " + url, params);
71		
72		return $.ajax({
73			type: 'POST',
74			async: true,
75		    url: url,
76		    data: params,
77		    success: function (response) {
78				if(showLoading) { uiUtil.hideLoadingBar(); }
79				
80				console.log("res " + url, response);
81				
82				success(response);
83			},
84		    complete: function (response) {
85				// 성공 실패 상관 없이 통신만 되면 해당 함수 실행
86				thenFunc(response);
87			},
88		    error: function(errorResponse) {
89				// 위 function 실행중 에러가 발생하거나, 네트워크 에러가 발생한 경우
90				if (errorResponse.response) {
91			      // 요청이 이루어졌으며 서버가 2xx의 범위를 벗어나는 상태 코드로 응답했습니다.
92			      console.error('요청이 이루어졌으며 서버가 2xx의 범위를 벗어나는 상태 코드로 응답했습니다.');
93			      console.log(errorResponse.response.data);
94			      console.log(errorResponse.response.status);
95			      console.log(errorResponse.response.headers);
96			    } else if (errorResponse.request) {
97			      // 요청이 이루어 졌으나 응답을 받지 못했습니다.
98			      // `error.request`는 브라우저의 XMLHttpRequest 인스턴스 또는
99			      // Node.js의 http.ClientRequest 인스턴스입니다.
100			      console.error('요청이 이루어 졌으나 응답을 받지 못했습니다.');
101			      console.log(errorResponse.request);
102			    } else {
103			      // 오류를 발생시킨 요청을 설정하는 중에 문제가 발생했습니다.
104			      console.error('오류를 발생시킨 요청을 설정하는 중에 문제가 발생했습니다.');
105			      console.log('Error : ', errorResponse.message);
106			    }
107			    
108				if(showLoading) { uiUtil.hideLoadingBar(); }
109				error({data:{resultCd: '9999', resultMsg: '통신중 오류가 발생했습니다.'}});
110			}
111		})
112	},
113	// get 방식의 ajax 호출
114	getAjax : function(
115		url
116		, params= {}
117		, success= function(){}
118		, error= function(response){ console.error(response.data.resultMsg); }
119		, showLoading= true
120		, thenFunc= function() {}
121	) {
122		if(showLoading) { uiUtil.showLoadingBar(); }
123
124		return $.ajax({
125		    url : url,
126		    data : params,
127		    type: 'GET',
128		    success: function (response) {
129				if(response.resultCd == '0000') {
130					// 컨트롤러에서 넘겨준 code가 00일 경우에 success function 실행
131					success(response);
132				} else {
133					// 통신에 성공하였고 함수에 문제가 없으나, 0000이외의 코드가 컨트롤러로 부터 응답왔을 경우
134					error(response);
135				}
136			},
137		    complete: function (response) {
138				// 성공 실패 상관 없이 통신만 되면 해당 함수 실행
139				thenFunc(response);
140			},
141		    error: function(errorResponse) {
142				// 위 function 실행중 에러가 발생하거나, 네트워크 에러가 발생한 경우
143				if (errorResponse.response) {
144			      // 요청이 이루어졌으며 서버가 2xx의 범위를 벗어나는 상태 코드로 응답했습니다.
145			      console.error('요청이 이루어졌으며 서버가 2xx의 범위를 벗어나는 상태 코드로 응답했습니다.');
146			      console.log(errorResponse.response.data);
147			      console.log(errorResponse.response.status);
148			      console.log(errorResponse.response.headers);
149			    } else if (errorResponse.request) {
150			      // 요청이 이루어 졌으나 응답을 받지 못했습니다.
151			      // `error.request`는 브라우저의 XMLHttpRequest 인스턴스 또는
152			      // Node.js의 http.ClientRequest 인스턴스입니다.
153			      console.error('요청이 이루어 졌으나 응답을 받지 못했습니다.');
154			      console.log(errorResponse.request);
155			    } else {
156			      // 오류를 발생시킨 요청을 설정하는 중에 문제가 발생했습니다.
157			      console.error('오류를 발생시킨 요청을 설정하는 중에 문제가 발생했습니다.');
158			      console.log('Error : ', errorResponse.message);
159			    }
160
161				error({data:{resultCd: '9999', resultMsg: '통신중 오류가 발생했습니다.'}});
162			},
163		}).then(function() {
164			if(showLoading) { uiUtil.hideLoadingBar(); }
165		});
166	},
167	//페이지 이동
168	submit : function(
169		url
170		, data
171	) {
172		uiUtil.showLoadingBar();
173		
174		//세션세팅
175		sessionStorage.deadline = 20 * 60 ;	// 20분
176		sessionStorage.params = JSON.stringify(data);
177		sessionStorage.prevUrl = document.URL;
178		
179		var insdoc = "";
180		Object.keys(data).forEach(function(key){
181			if($("input[name="+key+"]").length > 0) {
182				$("input[name=" + key + "]").val(data[key]);
183			} else {
184				insdoc+= "<input type='hidden' name='"+ key +"' value='"+ data[key] +"'>";
185			}
186		});
187		$(frm).append(insdoc);
188		
189		//모델세팅 및 페이지 이동
190		$(frm).attr('action',url).submit();
191	},
192	// 다른 page로 이동시 param에 담아서 이동
193	redirectPage : async function(
194		url
195		, params={}
196	) {
197		// 요청시 세션 연장
198		sessionStorage.deadline = 20 * 60 ;	// 20분
199		sessionStorage.params = JSON.stringify(params);
200		sessionStorage.prevUrl = document.URL;
201		window.location.href = url;
202	},
203	redirectPostPage : async function(
204		url
205		, params={}
206	) {
207		// 요청시 세션 연장
208		sessionStorage.deadline = 20 * 60 ;	// 20분
209		sessionStorage.params = JSON.stringify(params);
210		sessionStorage.prevUrl = document.URL;
211		var insdoc = "";
212		Object.keys(params).forEach(function(key){
213			insdoc+= "<input type='hidden' name='"+ key +"' value='"+ params[key] +"'>";
214		});
215
216		var goform = $("<form>", { method: "post", action: url, target: '_self', html: insdoc }).appendTo("body");
217		goform.submit();
218
219	}
220}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.