쉽게 풀어쓴 C 프로그래밍

Similar documents
PowerPoint Template

HTML5 인터넷보충학습자료 (2014) 14 강. HTML API [1] : 오프라인웹, 파일접근, 웹스토리지 14 강. HTML API [1] : 오프라인웹, 파일접근, 웹스토리지 1. 오프라인웹 1.1 오프라인웹애플리케이션 Ÿ 오프라인상태에서도사용이가능한애플리케이

PowerPoint 프레젠테이션

JSP 의내장객체 response 객체 - response 객체는 JSP 페이지의실행결과를웹프라우저로돌려줄때사용되는객체이다. - 이객체는주로켄텐츠타입이나문자셋등의데이터의부가정보 ( 헤더정보 ) 나쿠키 ( 다음에설명 ) 등을지정할수있다. - 이객체를사용해서출력의방향을다른

쉽게 풀어쓴 C 프로그래밍

Ext JS À¥¾ÖÇø®ÄÉÀ̼ǰ³¹ß-³¹Àå.PDF

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

쉽게 풀어쓴 C 프로그래밍

Javascript

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - 04-UDP Programming.ppt

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

쉽게 풀어쓴 C 프로그래밍

EDB 분석보고서 (04.03) ~ Exploit-DB( 에공개된별로분류한정보입니다. ** 5개이상발생한주요소프트웨어별상세 EDB 번호 종류 공격난이도 공격위험도 이름 소프트웨어이름 3037 SQL Inj

SK Telecom Platform NATE

쉽게 풀어쓴 C 프로그래밍

Lab10


2009년 상반기 사업계획

3장

Javascript.pages

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

쉽게 풀어쓴 C 프로그래밍

구축환경 OS : Windows 7 그외 OS 의경우교재 p26-40 참조 Windows 의다른버전은조금다르게나타날수있음 Browser : Google Chrome 다른브라우저를사용해도별차이없으나추후수업의모든과정은크롬사용 한

하둡을이용한파일분산시스템 보안관리체제구현

C H A P T E R 2

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES HTML 연동가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax Co

Microsoft PowerPoint 웹 연동 기술.pptx

PowerPoint 프레젠테이션

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :

PowerPoint 프레젠테이션

gcloud storage 사용자가이드 1 / 17

Microsoft PowerPoint - Lecture_Note_5.ppt [Compatibility Mode]

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

Microsoft PowerPoint - 03-TCP Programming.ppt

HTML5 인터넷보충학습자료 (2014) 15 강. HTML API [2] : 웹워커, 웹소켓, 위치정보 15 강. HTML API [2] : 웹워커, 웹소켓, 위치정보 1. 웹워커 1.1 멀티스레드와웹워커 Ÿ 하나의응용프로그램이스레드라불리는처리단위를복수개생성하여동시에

0. 들어가기 전

<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

01....b

¾Ë·¹¸£±âÁöħ¼�1-ÃÖÁ¾

2007백서-001-특집

00목차

(291)본문7

HTML5

9 차시고급위젯다루기 1 학습목표 날짜 / 시간과관련된위젯을배운다. 웹뷰를사용하여간단한웹브라우저기능을구현한다. 매니패스트파일의설정법을배운다. 2 확인해볼까? 3 날짜 / 시간위젯 1) 활동하기 활동개요

Secure Programming Lecture1 : Introduction

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

2009년 상반기 사업계획

PowerPoint 프레젠테이션

The Pocket Guide to TCP/IP Sockets: C Version

PHP & ASP

PowerPoint 프레젠테이션

<4D F736F F F696E74202D E20B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D62E >

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

PHP & ASP

Javascript

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks

Cookie Spoofing.hwp

3ÆÄÆ®-14

Windows 8에서 BioStar 1 설치하기

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

HTML5

PowerPoint 프레젠테이션

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx

Modal Window

웹 개발자를 위한 서블릿/JSP

The Pocket Guide to TCP/IP Sockets: C Version

bn2019_2

비디오 / 그래픽 아답터 네트워크 만약에 ArcGolbe를 사용하는 경우, 추가적인 디스크 공간 필요. ArcGlobe는 캐시파일을 생성하여 사용 24 비트 그래픽 가속기 Oepn GL 2.0 이상을 지원하는 비디오카드 최소 64 MB 이고 256 MB 이상을 메모리

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES xframe Version Management 가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax ww


2장 변수와 프로시저 작성하기

미쓰리 파워포인트

rmi_박준용_final.PDF

PowerPoint 프레젠테이션

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

Microsoft PowerPoint 세션.ppt

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

vRealize Automation용 VMware Remote Console - VMware

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

2파트-07

Microsoft PowerPoint - HTML5-교육컨설팅.ppt

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES ActiveX 컴포넌트가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax

[로플랫]표준상품소개서_(1.042)

Microsoft PowerPoint - web-part02-ch15-문서객체조작.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Orcad Capture 9.x

PowerPoint 프레젠테이션

행자부 G4C

AMP는 어떻게 빠른 성능을 내나.key

NTD36HD Manual

슬라이드 제목 없음

Network Security - Wired Sniffing 실습 ICNS Lab. Kyung Hee University

BMP 파일 처리

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

PowerPoint 프레젠테이션

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

Transcription:

CHAPTER 14. HTML5 웹스토리지, 파일 API, 웹소켓

웹스토리지 웹스토리지 (web storage) 는클라이언트컴퓨터에데이터를저장하는메카니즘 웹스토리지는쿠키보다안전하고속도도빠르다. 약 5MB 정도까지저장이가능하다. 데이터는키 / 값 (key/value) 의쌍으로저장

localstorage 와 sessionstorage localstorage 객체 만료날짜가없는데이터를저장한다. 도메인이다르면서로의로컬스토리지에접근할수없음. sessionstorage 객체 각세션 ( 하나의윈도우 ) 마다데이터가별도로저장 해당세션이종료되면데이터가사라진다.

localstorage 예제 <!DOCTYPE html> <html> <head></head> <body> <p> 페이지방문횟수 : <span id="count"> </span> 번 </p> <script> if (!localstorage.pageloadcount) localstorage.pageloadcount = 0; localstorage.pageloadcount = parseint(localstorage.pageloadcount) + 1; document.getelementbyid('count').textcontent = localstorage.pageloadcount; </script> </body> </html>

버튼을클릭한횟수저장 <!DOCTYPE html> <html> <head></head> <body> <p> <button onclick="incrementcounter()" type="button"> 눌러보세요!</button> </p> <div id="target"></div>

버튼을클릭한횟수저장 <script> function incrementcounter() { if (('localstorage' in window) && window['localstorage']!== null) { if (localstorage.count) { localstorage.count++; else { localstorage.count = 1; document.getelementbyid("target").innerhtml = localstorage.count + " 번클릭하였습니다."; else { document.getelementbyid("target").innerhtml = " 브라우저가웹스토리지를지원하지않습니다."; </script> </body> </html>

sessionstorage 예제 <!DOCTYPE html> <html> <head></head> <body> <p> <button onclick="incrementcounter()" type="button"> 눌러보세요!</button> </p> <div id="target"></div>

sessionstorage 예제 <script> function incrementcounter() { if (('sessionstorage' in window) && window['sessionstorage']!== null) { if (sessionstorage.count) { sessionstorage.count++; else { sessionstorage.count = 1; document.getelementbyid("target").innerhtml = sessionstorage.count + " 번클릭하였습니다."; else { document.getelementbyid("target").innerhtml = " 브라우저가웹스토리지를지원하지않습니다."; </script> </body> </html>

파일 API 파일 API: 웹브라우저가사용자컴퓨터에있는로컬파일들을읽어올수있도록해주는 API PC 에서실행되는일반적인프로그램처럼동작 ( 웹애플리케이션 ) 파일 API 의가장전형적인응용분야는아무래도사용자가파일을선택하여서원격서버로전송하는작업 파일 API 에서사용되는객체는 File, FileReader File 객체는로컬파일시스템에서얻어지는파일데이터를나타낸다. FileReader 객체는이벤트처리를통하여파일의데이터에접근하는메소드들을제공하는객체이다.

파일 API 예제 <!DOCTYPE html> <html> <head> <title>html File API </title> <script> function readfile() { if (!window.file!window.filereader) { alert('file API 가지원되지않습니다.'); return var files = document.getelementbyid('input').files; if (!files.length) { alert(' 파일을선택하시오!'); return; var file = files[0]; var reader = new FileReader(); reader.onload = function () { document.getelementbyid('result').value = reader.result; ; reader.readastext(file, "euc-kr"); </script>

파일 API 예제 </head> <body> <input type="file" id="input" name="input"> <button id="readfile" onclick="readfile()"> 파일읽기 </button><br /> <textarea id="result" rows="6" cols="60"> </textarea> </body> </html>

파일정보표시예제 <!DOCTYPE html> <html> <head> <title>html File API </title> <script> function readfile() { var files = document.getelementbyid('input').files; output = ""; for (var i = 0, f; f = files[i]; i++) { output += f.name + "\n"; /* f.name - Filename */ output += f.type + "\n"; /* f.type - File Type */ output += f.size + "bytes\n"; /* f.size - File Size */ output += f.lastmodifieddate + "\n"; /* f.lastmodifieddate */ document.getelementbyid('result').value = output; </script> </head> <body> <input type="file" id="input" name="input"> <button id="readfile" onclick="readfile()"> 파일읽기 </button><br /> <textarea id="result" rows="6" cols="60"> </textarea> </body> </html>

웹브라우저로실행 실행결과

애플리케이션캐시 애플리케이션이사용하는파일들을클라이언트의캐시 (cache) 에저장 애플리케이션캐시는다음과같은세가지장점을제공한다. 오프라인상태일때도사용자는웹애플리케이션을사용할수있다 캐시된파일은더빨리로드되어서그만큼속도가빨라진다. 서버부하가감소된다.

lock.html ck.html ck.js 시계예제 <!DOCTYPE HTML> <html manifest="clock.appcache"> <head> <title>clock</title> <script src="clock.js"></script> <link rel="stylesheet" href="clock.css"> </head> <body> <button onclick="setclock()"> 시계시작 </button> <br /> <output id="clock"></output> </body> </html> output { font: 2em sans-serif function setclock() { var now = new Date(); document.getelementbyid('clock').innerhtml = now; settimeout('setclock()', 1000);

실행결과 인터넷연결이끊기면시계는동작할까요? 웹브라우저로실행

lock.appcache CACHE MANIFEST clock.html clock.css clock.js 매니페스트파일

복잡한매니페스트파일 CACHE MANIFEST # 2010-06-18:v2 # 반드시캐시해야할파일 CACHE: index.html stylesheet.css images/logo.png scripts/main.js # 사용자가반드시온라인이어야하는리소스 NETWORK: login.php # 만약 main.jsp 가접근될수없으면 static.html 로서비스한다. # 다른모든.html 파일대신에 offline.html 로서비스한다. FALLBACK: /main.jsp /static.html *.html /offline.html

웹소켓 웹소켓 (Web Socket) 은웹애플리케이션을위한차세대양방향통신기술 애플리케이션은 HTTP 의답답한구속에서벗어나서 TCP/IP 가제공하는모든기능을사용할수있다.

예제 <!DOCTYPE HTML> <html> <head> <script> var ws; function open() { if ("WebSocket" in window) { ws = new WebSocket("ws://echo.websocket.org"); ws.onopen = function () { alert(" 웹소켓오픈성공 "); ; ws.onmessage = function (evt) { var msg = evt.data; document.getelementbyid("result").innerhtml = msg; ; ws.onclose = function () { alert(" 웹소켓연결해제 "); ; else { alert(" 웹소켓이지원되지않음!");

예제 function send() { ws.send(document.getelementbyid("data").value); function quit() { ws.close(); </script> </head> <body> <button onclick="open()"> 웹소켓연결 </button> <button onclick="quit()"> 웹소켓연결종료 </button><br /> <input type="text" id="data" /> <button onclick="send()"> 데이터송신 </button><br /> 에코서버로부터받은데이터 : <output id="result"></output> </body> </html>