Vahid Khalilpour Akram
UBI 506 - Secure Web Programming
Grading
- Homeworks:30%
- Final Project:40%
- Final Exam:30%
Lectures:
- Intoduction
- HTML and CSS
- JavaScript
- JSON
- JavaScript DOM
- HTTP
- Node.js
- AJAX
- MySQL and Node.js
- WebSocket (Client)
- WebSocket (Server-Node.js)
- Python
- Python-HTTP Server
- Developing Secure Web Applications
- AngularJS
- RESTful Web Services
Final Project
- Some Projects Idea
- Project Presentation Date: 2018/12/25 - 2019/01/04
Final Exam will be held on 2019/01/08
- If you prefer you may use your own labtops with installed Python, MySQL and Node.JS.
Make-up Exam will be held on 2019/01/22 - 13:30
- If you prefer you may use your own labtops with installed Python, MySQL and Node.JS.
Homeworks:
Please upload all homeworks to Moodle.
- HomeWork #1: Implement a web site for personal CV with at least 4 pages using HTML and CSS codes. The pages must have at least one navigation bar. (due date 2018/10/09)
- HomeWork #2:
- Implement Google Online Calculator using HTML, CSS and JavaScript (due date 2018/10/16)
- Implement a web page to read this JSON file and display information about TWD tv show in a table (due date 2018/10/16)
- HomeWork #3: Implement a web application for English-Turkish dictionary using HTML forms and Node.JS. Keep your words in a word.csv (sample) file in the server side. (due date 2018/10/30)
- HomeWork #4: Implement a web application to display information about TWD tv show using Javascript, DOM and Node.js according to the following requirements: (due date 2018/11/06)
- Server should support the following urls:
- \ or \all: display the movie and all episodes information
- \episode?id= eid: display information of episode with id=eid (get episode id from user)
- \season?id= sid: display information of all episodes in season with id=sid (get season id from user)
- \remove?id= eid: remove the information of episode with id=eid from the server (get episode id from user)
- Server should send requested movie Information in JSON format
- Use JavaScript and DOM in front end to show the received information
- Use Node.js to implement http server and back end program
- Server should send an error message if the requested url is not suported
- Submit your front and back end codes in two different folders
- HomeWork #5: Implement a web based chat application using websocket, Node.JS, JSON and MySQL with the following requirements: (due date 2018/11/27)
- User Registeration.
- Users should login before starting to chat
- Users will be able to see the offline and onlie users
- Users will be able to send/see private/public message to/from other online users.
- Exchange Information in JSON format.
- (Bonus +10) Users will be able to send file to other users.
- HomeWork #6 (Bouns +4): Find an attack in Google Gruyere to (due date 2018/12/10)
- change the sign in link in the upper right corner to point to https://evil.example.com.
- change other users private snippet on the home page