博客之前寫過一篇php實現post請求的文章。
今天想到好久沒有輸出了,重新認識到輸出的重要性。百般思索該寫些什么?想來想去,想到了兩點:
逐步熟練nodejs各種場景知識,針對mysql數據交互和fs文件數據交互練習。
本文屬於nodejs各種場景知識。
首先,nodejs實現post,可以直接使用request這個包,直接在文件下執行
cnpm install request --save -dev
然后在文件里面很容易實現post請求。
var request = require('request'); request.post({url:'http://www.youxuewang.com.cn/shouji/home/LoadProducts', form:{ "pageno": 1, "pagesize": 200, "condstr": "社會大課堂: 0" }}, function(error, response, body) { console.log(error,response,body) })
另外不利用第三方包,利用原生的node
var http = require('http'); var querystring = require('querystring'); var post_data = { "pageno": 1, "pagesize": 200, "condstr": "社會大課堂: 0" };//這是需要提交的數據 var content = querystring.stringify(post_data); var options = { hostname: 'youxuewang.com.cn', port: 80, //注意端口號 可以忽略不寫 寫一定寫對 path: '/shouji/home/LoadProducts', method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' } }; var req = http.request(options, function (res) { res.setEncoding('utf8'); res.on('data', function (chunk) { console.log('BODY: ' + chunk); //JSON.parse(chunk) }); }); req.on('error', function (e) { console.log('problem with request: ' + e.message); }); // write data to request body req.write(content); req.end();
注意如果寫端口一定要寫對,不寫端口也可以。
然后node js文件即可。至於get請求,自己研究吧。
