[PDF] [PDF] Advanced Web Programming

4 avr 2010 · Advanced Web Programming what we have covered so far 2 The SocketServer Module simplified development of network servers a server 



Previous PDF Next PDF





[PDF] Advanced Web Programming

4 avr 2010 · Advanced Web Programming what we have covered so far 2 The SocketServer Module simplified development of network servers a server 



[PDF] Advanced Web Programming - PESIT South Campus

Advanced Web Programming 17MCA42 Lectures 52 Hrs 2 COURSE PRE- REQUISITE STATEMENT Student should know the basics of Internet, HTML and  



[PDF] Advanced Web Programming - RUA

– MooTools is an open source, lightweight, modular object-oriented programming JavaScript web application framework – It includes built-in functions for



[PDF] MCA-304 Advance Web Technology - Vardhman Mahaveer Open

programming, Build your own PHP MySql project website The present book entitled “Advance Web Technology” has been designed so as to cover the unit-



[PDF] Advanced Web Technology

Introduction: The World Wide Web, WWW Architecture, Web Search Engine, Web the Java Servlets did not separate the Programming logic from the presentation layer manual steering, power steering, or rack-and-pinion steering Thus,



[PDF] [Advanced Java & Web Technologies] LECTURE NOTES

Chapter 6 introduces JSP (Java Server Pages) which is a Java related technology for server- side programming and is a simplification over Servlets Chapter 7 



[PDF] Advanced Web Technologies - School of Computer Science - The

Knowledge Acquisition ▫ Modelling ▫ Ontology Critique ▫ Use of tools ▫ Application development – that means Java programming Page 16 Research 



[PDF] Advanced Web 2: Programming & Specialized Topics

Advanced Web 2: Programming Specialized Topics 8:30 - 10 p m ) Prerequisites: Skills learned in Advanced Web 1 course Class URL: History of the Web Web specifications uploads/2012/08/ NetiquetteGuideforOnlineCourses pdf Mastery in It can include using notes, in physical or electronic form, in an exam 



[PDF] WEB PROGRAMMING - Webs

Web browsers can also refer to Cascading Style Sheets (CSS) to define the HTML is not a programming language, it is a markup language Basic Notes - Useful Tips For more in-depth information and some intermediate-to-advanced



[PDF] ils/g Fundamentals of Web Programming - LPU Distance Education

Fundamentals of Web Programming Notes 6 The ISP's DNS Server tells the User's So basic JavaScript is easy to learn, but when you start writing advanced scripts browser differences applets, ActiveX, PDF, and Flash into a webpage 7

[PDF] advanced web programming practical pdf

[PDF] advanced web programming sanfoundry

[PDF] advanced web programming syllabus

[PDF] advanced web programming tutorial

[PDF] advanced web programming tutorial pdf

[PDF] advanced web programming w3schools

[PDF] advanced web technologies

[PDF] advanced web technologies and tools

[PDF] advanced web technology syllabus

[PDF] advanced writing skills class 12 pdf

[PDF] advanced writing skills for students of english phil williams pdf

[PDF] advanced writing skills john arnold pdf

[PDF] advancedmd app for android

[PDF] advancing health equity in minnesota

[PDF] advancing health equity in minnesota report to the legislature

Advanced Web Programming

1

Advanced Web Programming

what we have covered so far 2

The SocketServer Module

simplified development of network servers a server tells clients the time 3

A Forking Server

instead of threads use processes process to handle a client 4

The BaseHTTPServer Module

creating a very simple HTTP server code for the simple HTTP web server

MCS 275 Lecture 33

Programming Tools and File Management

Jan Verschelde, 3 April 2017

Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 1 / 36

Advanced Web Programming

1

Advanced Web Programming

what we have covered so far 2

The SocketServer Module

simplified development of network servers a server tells clients the time 3

A Forking Server

instead of threads use processes process to handle a client 4

The BaseHTTPServer Module

creating a very simple HTTP server code for the simple HTTP web server Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 2 / 36

Plan of the Course

since the first midterm

In the four weeks after the midterm exam

we covered: 1

CGI programming: handling forms

2 database programming: MySQL and MySQLdb 3 network programming: using sockets 4 multithreaded programming

Anything left to cover?

Advanced Web Programming

→gluing various programming tools Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 3 / 36

Advanced Web Programming

1

Advanced Web Programming

what we have covered so far 2

The SocketServer Module

simplified development of network servers a server tells clients the time 3

A Forking Server

instead of threads use processes process to handle a client 4

The BaseHTTPServer Module

creating a very simple HTTP server code for the simple HTTP web server Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 4 / 36

The SocketServer Module

simplified development of network servers With theSocketServermodule we do not need to import the socketmodule for the server script.

Follow these steps:

1 from socketserver import StreamRequestHandler from socketserver import TCPServer 2

Inheriting fromStreamRequestHandler

define a request handler class. Overridehandle(). →handle()processes incoming requests 3

InstantiateTCPServerwith(address, port)

and an instance of the request handler class. →this returns a server object 4

Apply the methodhandle_request()orserve_forever()

to the server object. Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 5 / 36

Advanced Web Programming

1

Advanced Web Programming

what we have covered so far 2

The SocketServer Module

simplified development of network servers a server tells clients the time 3

A Forking Server

instead of threads use processes process to handle a client 4

The BaseHTTPServer Module

creating a very simple HTTP server code for the simple HTTP web server Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 6 / 36 a server to tell the time withSocketServer

In the window running the server:

$ python clockserver.py server is listening to 12091 connected at ('127.0.0.1', 49142) read "What is the time? " from client writing "Sun Apr 4 18:16:14 2010" to client

In the window running the client:

$ python clockclient.py client is connected

Sun Apr 4 18:16:14 2010

Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 7 / 36 code for the client in fileclockclient.py from socket import socket as Socket from socket import AF_INET, SOCK_STREAM

HOSTNAME = 'localhost' # on same host

PORTNUMBER = 12091 # same port number

BUFFER = 25 # size of the buffer

SERVER_ADDRESS = (HOSTNAME, PORTNUMBER)

CLIENT = Socket(AF_INET, SOCK_STREAM)

CLIENT.connect(SERVER_ADDRESS)

print('client is connected')

QUESTION = 'What is the time?'

DATA = QUESTION + (BUFFER-len(QUESTION))

CLIENT.send(DATA.encode())

DATA = CLIENT.recv(BUFFER)

print(DATA.decode())

CLIENT.close()

Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 8 / 36 code for the server in the fileclockserver.py from socketserver import StreamRequestHandler from socketserver import TCPServer from time import ctime

PORT = 12091

class ServerClock(StreamRequestHandler):

The server tells the clients the time.

def handle(self):

Handler sends time to client.

def main():

Starts the server and serves requests.

Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 9 / 36 code for the handler def handle(self):

Handler sends time to client.

print("connected at", self.client_address) message = self.rfile.read(25) data = message.decode() print('read \"' + data + '\" from client') now = ctime() print('writing \"' + now + '\" to client') self.wfile.write(now.encode()) Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 10 / 36 code for the main function def main():

Starts the server and serves requests.

ss = TCPServer(('', PORT), ServerClock) print('server is listening to', PORT) try: print('press ctrl c to stop server') ss.serve_forever() except KeyboardInterrupt: print(' ctrl c pressed, closing server') ss.socket.close() if __name__ == "__main__": main() Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 11 / 36

Aboutrfileandwfile

attributes in the classStreamRequestHandler rfilecontains input stream to read data from client example:data = self.rfile.read(25) client must send exactly 25 characters! wfilecontains output stream to write data to client example:self.wfile.write(data) all data are strings of characters! Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 12 / 36 alternatives to the simple example

Instead ofStreamRequestHandler,

we can useDatagramRequestHandler.

Instead ofTCPServer, we can useUDPServer,

if we want UDP instead of TCP protocol.

On Unix (instead ofTCPServer):UnixStreamServeror

UnixDatagramServer.

Choice between

1 handle_request(): handle one single request, or 2 serve_forever(): indefinitely many requests. Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 13 / 36 usingserve_forever()

Withserve_forever(),wecan

1 serve indefinitely many requests, 2 simultaneously from multiple clients. ss = TCPServer(('',port),ServerClock) print 'server is listening to', port try: print 'press ctrl c to stop server' ss.serve_forever() except KeyboardInterrupt: print ' ctrl c pressed, closing server' ss.socket.close() Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 14 / 36

Advanced Web Programming

1

Advanced Web Programming

what we have covered so far 2

The SocketServer Module

simplified development of network servers a server tells clients the time 3

A Forking Server

instead of threads use processes process to handle a client 4

The BaseHTTPServer Module

creating a very simple HTTP server code for the simple HTTP web server Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 15 / 36 a forking server

Threads in Python are not mapped to cores.

For computationally intensive request,

we want to spawn a new process. >>> import os >>> help(os.fork)

Help on built-in function fork in module posix:

fork(...) fork() -> pid

Fork a child process.

Return 0 to child process

and PID of child to parent process. Programming Tools (MCS 275)advanced web programmingL-33 3 April 2017 16 / 36 illustration of a forkquotesdbs_dbs4.pdfusesText_7