html、javascript、backbone资料查…

使用javascript做服务器,网页浏览效果。

1.安装node.js 环境

 

2.cmd使用NPM命令:npm install express 安装express环境

 

3.使用文本编辑器或者专业编辑器编辑JS如:eclipse

 

4.CMD模式下使用NODE命令 启动服务器 如:node app

 

5.浏览器模式启动 输入网址,查看效果:http://127.0.0.1:3005

6.注意端口,如果不输入端口,默认是80,,端口在服务器中设置。


=======================================================================

 

 

·http 的四种基本通信方法 用于网页与服务器通信:get post put delete 

Get--相当于数据库中的查询,select ,请求数据

Post---也可以用于查询数据,相当于creat,提交数据

Put---用于更新--update,更新数据

Delete----删除


 

·Restful 基于http ,所以Restful包含以上四种方法,以上四种方法都是javascript中使用的。


 

 

·nodejs中使用console.log方法可以在终端打印出对象数组等的详细信息,这个对于调试还是比较方便的。


·request对象可以在官网的ServerRequest中查看,还是比较详细的

http://nodejs.org/docs/v0.5.2/api/http.html#http.ServerRequest



=======================================================================


 

·request.header 以及几个常用的属性,基础差,列出来没事仔细看看: 

headers: 

   { host: 'localhost:8889',

     connection: 'keep-alive',

     referer: 'http://localhost:8889/',

     'user-agent': 'Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.30 (KHTML, like Gecko) Ubuntu/10.10 Chromium/12.0.742.112 Chrome/12.0.742.112 Safari/534.30',

     accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',

     'accept-encoding': 'gzip,deflate,sdch',

     'accept-language': 'zh-CN,zh;q=0.8',

     'accept-charset': 'GBK,utf-8;q=0.7,*;q=0.3' },

  trailers: {},

  readable: true,

  url: '/upload?text=neekey+hello!!!', // 利用get提交的表单数据...够低级的注释吧

  method: 'GET',

  statusCode: null

 

=======================================================================


·post的数据在上面是找不到的,参考:浅谈HTTPGetPost的区别

http://www.cnblogs.com/hyddd/archive/2009/03/31/1426026.html

 

·nodejs中接受post数据可没有php之类的那么简单,由于post的传输是数据包的传输,因此就必然是异步的,直接看代码,应该会更好的理解: 

request.setEncoding("utf8"); // 先设置编码

 

    request.addListener("data", function(postDataChunk) {  // 有新的数据包到达就执行

      postData += postDataChunk;

      console.log("Received POST data chunk '"+

      postDataChunk + "'.");

    });

 

    request.addListener("end", function() {  // 数据传输完毕

      route(handle, pathname, response, postData);

    });

 

=======================================================================

·Eclipse调试Node.js代码

http://www.cnblogs.com/QLeelulu/archive/2011/05/06/2039266.html

·

 

 

 

====================================================================

Http方法:Get请求与Post请求的区别

http://www.douban.com/note/180488791/

 

 

Http方法:Get请求与Post请求的区别
Get是向服务器发索取数据的一种请求,而Post是向服务器提交数据的一种请求
Get是获取信息,而不是修改信息,类似数据库查询功能一样,数据不会被修改
Get请求的参数会跟在url后进行传递,请求的数据会附在URL之后?分割URL和传输数据,参数之间以&相连,XX中的XX为该符号以16进制表示的ASCII,如果数据是英文字母/数字,原样发送,如果是空格,转换为+,如果是中文/其他字符,则直接把字符串用BASE64加密。
Get传输的数据有大小限制,因为GET是通过URL提交数据,那么GET可提交的数据量就跟URL的长度有直接关系了,不同的浏览器对URL的长度的限制是不同的。
GET请求的数据会被浏览器缓存起来,用户名和密码将明文出现在URL上,其他人可以查到历史浏览记录,数据不太安全。在服务器端,用Request.QueryString来获取Get方式提交来的数据
Post请求则作为http消息的实际内容发送给web服务器,数据放置在HTML Header内提交,Post没有限制提交的数据。PostGet安全,当数据是中文或者不敏感的数据,则用get,因为使用get,参数会显示在地址,对于敏感数据和不是中文字符的数据,则用post
POST表示可能修改变服务器上的资源的请求,在服务器端,用Post方式提交的数据只能用Request.Form来获取

百度百科   RESTful       http://baike.baidu.com/view/5798116.htm

在服务器端,应用程序状态和功能可以分为各种资源。资源是一个有趣的概念实体,它向客户端公开。资源的例子有:应用程序对象、数据库记录、算法等等。每个资源都使用 URI (Universal Resource Identifier) 得到一个惟一的地址。所有资源都共享统一的界面,以便在客户端和服务器之间传输状态。使用的是标准的 HTTP 方法,比如 GETPUTPOST 和 DELETE

 

====================================================================

百度百科 rest   http://baike.baidu.com/view/1077487.htm

REST关键原则

大部分对REST的介绍是以其正式的定义和背景作为开场的。但这儿且先按下不表,我先提出一个简单扼

要的定义:REST定义了应该如何正确地使用(这和大多数人的实际使用方式有很大不同)Web标准,例

HTTPURI。如果你在设计应用程序时能坚持REST原则,那就预示着你将会得到一个使用了优质Web

架构(这将让你受益)的系统。总之,五条关键原则列举如下:

为所有“事物”定义ID

将所有事物链接在一起

使用标准方法

资源多重表述

无状态通信


 

 

=====================================================================

http://liuxufei.com/blog/jishu/798.html

使用 NodeJS Express 從 GET/POST Request 取值

20121031日 星期三

過去無論哪一種網站應用程式的開發語言,初學者教學中第一次會提到的起手式,八九不離十就是 GET/POST Request 的取值。但是,在 Node.js Express 的世界中,彷彿人人是高手,天生就會使用,從不曾看到有人撰文說明。

這應該算是開發 Web Service 的入門,在 Client 與 Server 的互動中,瀏覽器發出 GET/POST Request 時會傳值給 Server-side,常見應用就是網頁上以 POST method 送出的表單內容,或是網址列上的 Query Strings ex: page?page=3&id=5)。然後,我們的網站應用程式透過解析這些參數,得到使用者上傳的資訊。

取得 GET Request 的 Query Strings

GET /test?name=fred&tel=0926xxx572

 

app.get('/test', function(req, res) {

    console.log(req.query.name);

    console.log(req.query.tel);

});

如果是透過表單且是用 POST method

 

     

     

     

 

app.post('/test', function(req, res) {

    console.log(req.query.id);

    console.log(req.body.name);

    console.log(req.body.tel);

});

當然也可以 Query Strings 和 POST method 的表單同時使用:

 

     

     

     

 

app.post('/test', function(req, res) {

    console.log(req.query.id);

    console.log(req.body.name);

    console.log(req.body.tel);

});

順帶補充,還有另一種方法傳遞參數給 Server,就是使用路徑的方式,可以利用 Web Server 的 HTTP Routing 來解析,常見於的各種 Web Framework。這不算是傳統標準規範的做法,是屬於 HTTP Routing 的延伸應用。

GET /hello/fred/0926xxx572

 

app.get('/hello/:name/:tel', function(req, res) {

    console.log(req.params.name);

    console.log(req.params.tel);

});

 

来源:http://fred-zone.blogspot.com/2012/02/nodejs-express-getpost-request.html

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值