【nodejs筆記4】搭建多人博客<內含http請求的get post方法區別>

功能分析web

博客具備四個功能:註冊  登陸  登出  發表文章   數據庫

界面設計瀏覽器

未登陸: 【主頁  註冊頁  登陸頁】緩存

  [主頁] 安全

                                                       主頁服務器

       左側 HOME                                這是主頁app

             LOGINpost

             REGISTER網站

  [註冊頁]  「/reg」加密

                                                        註冊

       左側HOME                       用戶名:________

             LOGIN                      密碼:__________

             REGISTER                確認密碼:_______

                                            郵箱:__________

                                            註冊

 

  [登陸頁]  "/login"

                                                       登陸

       左側HOME                       用戶名:________

             LOGIN                      密碼:__________

             REGISTER                登陸                                           

 

登陸後:【主頁   發表頁】

  [主頁]                              

                                        主頁

      HOME

      POST

      LOGOUT

 

   [發表頁]

                                       發表

    HOME            標題:

    POST             __________________

    LOGOUT           正文:

                        __________________

                        __________________

                        __________________

                        登陸

 

   [登出]    按登出後,回到主頁。

操做步驟

http 請求中,get()和post()方法的區別

通常咱們在瀏覽器輸入一個網址訪問網站都是GET請求;

HTTP定義了與服務器交互的不一樣方法,其中最基本的四種:GET,POST,PUT,DELETE,HEAD,其中GET和HEAD被稱爲安全方法,由於使用GET和HEAD的HTTP請求不會產生什麼動做。不會產生動做意味着GET和HEAD的HTTP請求不會在服務器上產生任何結果。可是安全方法並非什麼動做都不產生,這裏的安全方法僅僅指不會修改服務端的信息。根據HTTP規範,POST可能會修改服務器上的資源的請求。好比CSDN的博客,用戶提交一篇文章或者一個讀者提交評論是經過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沒有限制提交的數據。Post比Get安全,當數據是中文或者不敏感的數據,則用get,由於使用get,參數會顯示在地址,對於敏感數據和不是中文字符的數據,則用post
POST表示可能修改變服務器上的資源的請求,在服務器端,用Post方式提交的數據只能用Request.Form來獲取

 

1. 路由規劃

/

/login

/reg

/post

/logout

 2. 修改index.js 中的路由信息

 1 module.exports = function(app){
 2   app.get('/',function(req,res){
 3     res.render('index',{title: 'Express'});
 4   });
 5 
 6   app.get('/reg',function(req,res){
 7     res.render('index',{title: '註冊'});
 8   });
 9   app.post('/reg',function(req,res){ });
10 
11   app.get('/login',function(req,res){
12     res.render{'index',title : '登陸'}
13   });
14   app.post('/login',function(req,res){ });
15 
16   app.ger('/post',function(req,res){
17     res.render('index',{title:'發表文章'});
18   });
19   app.post('/post',function(req,res){ });
20 
21   app.get('/logout',function(req,res){ });
22 
23 };
相關文章
相關標籤/搜索