淺談Express的put與del


假設有一個景區價格列表頁,顯示當前的價目表。

價目表存放在express應用的數組中:

var tours = [
    {id:0,name:'Hood River',price:99.99},
    {id:1,name:'Oregon Coast',price:149.95}
];

價目表查看頁面,XML效果如下所示:

<tours>
<tour price="99.99" id="0">Hood River</tour>
<tour price="149.95" id="1">Oregon Coast</tour>
</tours>

expres設置put節點用於更新價目表:

app.put('/api/tour/:id',function (req,res) {
    var id = req.params.id;
    var p = tours.some(function (p) {
       return p.id == id;
    });
    if(p){
       if(req.query.name) tours[id].name = req.query.name;
       if(req.query.price) tours[id].price = req.query.price;
       res.json({success:true,tours:tours,p:p});
    }else{
       res.json({error:'No such tour exists.'});
    }
});

expres設置del節點用於刪除一條價目信息:

app.del('/api/tour/:id',function (req,res) {
    var id = req.params.id;
    var p = tours.some(function (p) {
        return p.id == id;
    });
    if(p){
        tours.splice(id,1);
        res.json({success:true,tours:tours,p:p});
    }else{
        res.json({error:'No such tour exists.'});
    }
});

使用ajax模擬發送put和del請求。

當我們想要更新價目信息時:

$.ajax({
    url:"http://10.21.20.234:3000/api/tour/0?name=Woods&price=100.00",
    type:'put',
    success:function(res){
        console.log(res);
    }
});

價目表XML更新為:

<tours>
<tour price="100.00" id="0">Woods</tour>
<tour price="149.95" id="1">Oregon Coast</tour>
</tours>

 

當我們想要刪除價目信息時:

$.ajax({
    url:"http://10.21.20.234:3000/api/tour/0",
    type:'DELETE',
    success:function(res){
        console.log(res);
    }
});

 

價目表XML更新為:

<tours>
<tour price="149.95" id="1">Oregon Coast</tour>
</tours>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM