安裝MongoDB:
http://qqboxy.blogspot.com/2013/08/mongodb-nosql-server-on-windows.html
Node.js安裝Mongoose Addon:
Mongoose手冊:
http://mongoosejs.com/docs/guide.html
學習步驟:
1. 學習SQL、NoSQL的基礎概念。
2. 學習建立MongoDB資料庫。
3. 學習使用Mongoose建立一筆資料。
作業:
1. 使用Mongoose建立CRUD(Create、Read、Update、Delete)的動作。
2014年2月24日 星期一
2014年2月19日 星期三
Advanced JS Chapter 8
THREE.js:
http://threejs.org/
dat-gui:
https://code.google.com/p/dat-gui/
學習步驟:
1. 學習使用THREE.js。
作業:
1. 將THREE.js應用於Webapp。
http://threejs.org/
dat-gui:
https://code.google.com/p/dat-gui/
學習步驟:
1. 學習使用THREE.js。
作業:
1. 將THREE.js應用於Webapp。
2014年2月17日 星期一
Advanced JS Chapter 7
流暢介面寫法:
http://codeboxy.blogspot.com/2013/10/fluent-interface-with-prototype.html
學習步驟:
1. 學習使用流暢介面寫法撰寫程式碼。
作業:
1. 建立網站登入系統及APP操作介面採用流暢介面寫法撰寫。
http://codeboxy.blogspot.com/2013/10/fluent-interface-with-prototype.html
學習步驟:
1. 學習使用流暢介面寫法撰寫程式碼。
作業:
1. 建立網站登入系統及APP操作介面採用流暢介面寫法撰寫。
2014年2月13日 星期四
Advanced JS Chapter 6
Express資料夾權限控制:
http://codeboxy.blogspot.com/2013/10/folder-access-restrictions-in-nodejs.html
學習步驟:
1. 學習使用Session建立網頁權限控制。
作業:
1. 建立網站登入系統及APP操作介面。
http://codeboxy.blogspot.com/2013/10/folder-access-restrictions-in-nodejs.html
學習步驟:
1. 學習使用Session建立網頁權限控制。
作業:
1. 建立網站登入系統及APP操作介面。
2014年2月12日 星期三
Advanced JS Chapter 5
使用JavaScript在目標前後插入或包覆標籤:
http://codeboxy.blogspot.com/2011/10/javascript-insertbefore-insertafter.html
學習步驟:
1. 學習虛擬物件的概念。
2. 虛擬物件的應用。
作業:
1. 使用虛擬物件完善網站。
http://codeboxy.blogspot.com/2011/10/javascript-insertbefore-insertafter.html
學習步驟:
1. 學習虛擬物件的概念。
2. 虛擬物件的應用。
作業:
1. 使用虛擬物件完善網站。
Advanced JS Chapter 4
Mimetype Table
Node.js (extTypes.js):
轉址下載用法
Node.js (main.js):
學習步驟:
1. 檔案網路安全概念。
2. 學習如何將現有下載功能改成轉址方式。
作業:
1. 採用更安全的方式,利用讀檔寫檔設計一個可編輯公告內容的網站。
Node.js (extTypes.js):
module.exports = { "3gp" : "video/3gpp", "a" : "application/octet-stream", "ai" : "application/postscript", "aif" : "audio/x-aiff", "aiff" : "audio/x-aiff", "asc" : "application/pgp-signature", "asf" : "video/x-ms-asf", "asm" : "text/x-asm", "asx" : "video/x-ms-asf", "atom" : "application/atom+xml", "au" : "audio/basic", "avi" : "video/x-msvideo", "bat" : "application/x-msdownload", "bin" : "application/octet-stream", "bmp" : "image/bmp", "bz2" : "application/x-bzip2", "c" : "text/x-c", "cab" : "application/vnd.ms-cab-compressed", "cc" : "text/x-c", "chm" : "application/vnd.ms-htmlhelp", "class" : "application/octet-stream", "com" : "application/x-msdownload", "conf" : "text/plain", "cpp" : "text/x-c", "crt" : "application/x-x509-ca-cert", "css" : "text/css", "csv" : "text/csv", "cxx" : "text/x-c", "deb" : "application/x-debian-package", "der" : "application/x-x509-ca-cert", "diff" : "text/x-diff", "djv" : "image/vnd.djvu", "djvu" : "image/vnd.djvu", "dll" : "application/x-msdownload", "dmg" : "application/octet-stream", "doc" : "application/msword", "dot" : "application/msword", "dtd" : "application/xml-dtd", "dvi" : "application/x-dvi", "ear" : "application/java-archive", "eml" : "message/rfc822", "eps" : "application/postscript", "exe" : "application/x-msdownload", "f" : "text/x-fortran", "f77" : "text/x-fortran", "f90" : "text/x-fortran", "flv" : "video/x-flv", "for" : "text/x-fortran", "gem" : "application/octet-stream", "gemspec" : "text/x-script.ruby", "gif" : "image/gif", "gz" : "application/x-gzip", "h" : "text/x-c", "hh" : "text/x-c", "htm" : "text/html", "html" : "text/html", "ico" : "image/vnd.microsoft.icon", "ics" : "text/calendar", "ifb" : "text/calendar", "iso" : "application/octet-stream", "jar" : "application/java-archive", "java" : "text/x-java-source", "jnlp" : "application/x-java-jnlp-file", "jpeg" : "image/jpeg", "jpg" : "image/jpeg", "js" : "application/javascript", "json" : "application/json", "log" : "text/plain", "m3u" : "audio/x-mpegurl", "m4v" : "video/mp4", "man" : "text/troff", "mathml" : "application/mathml+xml", "mbox" : "application/mbox", "mdoc" : "text/troff", "me" : "text/troff", "mid" : "audio/midi", "midi" : "audio/midi", "mime" : "message/rfc822", "mml" : "application/mathml+xml", "mng" : "video/x-mng", "mov" : "video/quicktime", "mp3" : "audio/mpeg", "mp4" : "video/mp4", "mp4v" : "video/mp4", "mpeg" : "video/mpeg", "mpg" : "video/mpeg", "ms" : "text/troff", "msi" : "application/x-msdownload", "odp" : "application/vnd.oasis.opendocument.presentation", "ods" : "application/vnd.oasis.opendocument.spreadsheet", "odt" : "application/vnd.oasis.opendocument.text", "ogg" : "application/ogg", "p" : "text/x-pascal", "pas" : "text/x-pascal", "pbm" : "image/x-portable-bitmap", "pdf" : "application/pdf", "pem" : "application/x-x509-ca-cert", "pgm" : "image/x-portable-graymap", "pgp" : "application/pgp-encrypted", "pkg" : "application/octet-stream", "pl" : "text/x-script.perl", "pm" : "text/x-script.perl-module", "png" : "image/png", "pnm" : "image/x-portable-anymap", "ppm" : "image/x-portable-pixmap", "pps" : "application/vnd.ms-powerpoint", "ppt" : "application/vnd.ms-powerpoint", "ps" : "application/postscript", "psd" : "image/vnd.adobe.photoshop", "py" : "text/x-script.python", "qt" : "video/quicktime", "ra" : "audio/x-pn-realaudio", "rake" : "text/x-script.ruby", "ram" : "audio/x-pn-realaudio", "rar" : "application/x-rar-compressed", "rb" : "text/x-script.ruby", "rdf" : "application/rdf+xml", "roff" : "text/troff", "rpm" : "application/x-redhat-package-manager", "rss" : "application/rss+xml", "rtf" : "application/rtf", "ru" : "text/x-script.ruby", "s" : "text/x-asm", "sgm" : "text/sgml", "sgml" : "text/sgml", "sh" : "application/x-sh", "sig" : "application/pgp-signature", "snd" : "audio/basic", "so" : "application/octet-stream", "svg" : "image/svg+xml", "svgz" : "image/svg+xml", "swf" : "application/x-shockwave-flash", "t" : "text/troff", "tar" : "application/x-tar", "tbz" : "application/x-bzip-compressed-tar", "tcl" : "application/x-tcl", "tex" : "application/x-tex", "texi" : "application/x-texinfo", "texinfo" : "application/x-texinfo", "text" : "text/plain", "tif" : "image/tiff", "tiff" : "image/tiff", "torrent" : "application/x-bittorrent", "tr" : "text/troff", "txt" : "text/plain", "vcf" : "text/x-vcard", "vcs" : "text/x-vcalendar", "vrml" : "model/vrml", "war" : "application/java-archive", "wav" : "audio/x-wav", "wma" : "audio/x-ms-wma", "wmv" : "video/x-ms-wmv", "wmx" : "video/x-ms-wmx", "wrl" : "model/vrml", "wsdl" : "application/wsdl+xml", "xbm" : "image/x-xbitmap", "xhtml" : "application/xhtml+xml", "xls" : "application/vnd.ms-excel", "xml" : "application/xml", "xpm" : "image/x-xpixmap", "xsl" : "application/xml", "xslt" : "application/xslt+xml", "yaml" : "text/yaml", "yml" : "text/yaml", "zip" : "application/zip" };
轉址下載用法
Node.js (main.js):
var express = require("./node_modules/express"), fs = require("fs"), extTypes = require("./extTypes.js"); var app = express(); var port = 1337; app.listen(port); app.use('/', express.static(__dirname + '/html/')); app.get("/download", function(req, res) { var file = "./upload/20140210/ahg056fg01sa40df8sd9"; var filename = "firefox.png"; var mimetype = extTypes["png"]; res.setHeader('Content-disposition', 'attachment; filename=' + filename); res.setHeader('Content-type', mimetype); var filestream = fs.createReadStream(file); filestream.pipe(res); }); console.log("Start express server");
學習步驟:
1. 檔案網路安全概念。
2. 學習如何將現有下載功能改成轉址方式。
作業:
1. 採用更安全的方式,利用讀檔寫檔設計一個可編輯公告內容的網站。
訂閱:
文章 (Atom)