node.js - express怎么接收前端ajax請(qǐng)求?
問(wèn)題描述
1.前端:
$.ajax({ type: 'post',url: ’back.js’,data: '123',success: sssqRverOnSuccess });function sssqRverOnSuccess(data) { console.log(data);}
2.后端:
app.post(’/back.js’, function(err, req, res, next) { res.end(’123’);});
3.back.js的內(nèi)容
收到請(qǐng)求
4.瀏覽器控制臺(tái):POST http://localhost:3000/back.js 404 (Not Found)
5.服務(wù)端控制臺(tái)POST /back.js 404 32.698 ms - 1257
問(wèn)題:1.為什么我用get請(qǐng)求可以成功,也就是瀏覽器控制臺(tái)輸出 “收到請(qǐng)求”。而post不能?
2.url只是一個(gè)標(biāo)識(shí),文件可以不存在(我昨天提的問(wèn)題里告訴我的https://segmentfault.com/q/10...)。但是為什么會(huì)返回我的back.js的內(nèi)容呢?難道xmlhttprequest和jquery ajax的url代表不一樣?
問(wèn)題解答
回答1:可以嘗試一下
ajax({ type:post, url:'/back.js' success:function(data){console.log(data)}})app.post(’/back.js’, function(req, res, next) { res.send(’123’);});
我之前的server都是這樣寫的
兄弟,你的express沒(méi)跑起來(lái),不要被PHP誤導(dǎo),nodejs跑起來(lái)后,可以理解為 Apache和PHP的組合。你訪問(wèn)的back.js只是靜態(tài)文件,雖然nodejs也可以配置成fcgi腳本方式響應(yīng)內(nèi)容,但那是繞彎路和不科學(xué)的做法!建議你按教程走一遍express入門教程,了解APP和路由的概念!
回答3:我以前學(xué)的時(shí)候?qū)懙囊欢危F(xiàn)在用koa了,express都忘沒(méi)了req.body就是post進(jìn)來(lái)的東西
router.post(’/doCreate’, function(req, res, next) { var data = new article.articleModel({name : req.body.name,cat : req.body.cat,author : req.body.author,time : moment(Date.now()).format('YYYY-MM-DD HH:mm:ss'),desc : req.body.desc,content : req.body.content }); data.save(function (err, doc) { if (err) {console.log(err);res.redirect(’/article/fail’); } else {console.log(doc + ’數(shù)據(jù)保存成功’);res.redirect(’/admin/article/list’); } });});
相關(guān)文章:
1. javascript - 這兩種函數(shù)寫法各有什么好處?2. 微信支付 - python做微信企業(yè)付款出現(xiàn)CA證書錯(cuò)誤3. 前端 - css3傾斜帶來(lái)問(wèn)題部分?4. node.js - vue 子組件的菜單 如何與 父組件 通信?5. javascript - node環(huán)境使用vue-cli 配置代理6. 了解Java中的有限泛型。有什么意義?7. angular.js - 在ionic下,利用javascript導(dǎo)入百度地圖,pc端可以顯示,移動(dòng)端無(wú)法顯示8. html5 - HTML代碼中的文字亂碼是怎么回事?9. html5 - 如何禁止百度轉(zhuǎn)碼?10. angular.js - vue or angular.2 or react
