python post
python获取到数据后发送post 到另外一个服务器,使用requests就行,问题是: 服务器没有开,或者没有及时响应怎么半?如果不处理,程序会直接退出:
看得出是连接不了,所以必须try except,代码如下所示:
import json
import requests
import time
headers = {'Content-Type': 'application/json'}
data = {
'name' : 'one screen',
'number' : 0,
'reg' : 'test'
}
for num in range(1,10):
data['number'] = num
datas = json.dumps(data)
try:
r = requests.post("http://127.0.0.1:8000/post/data", data=datas, headers=headers)
print(r.text)
except requests.exceptions.ConnectionError:
print('connectionError')
time.sleep(1)
写一段nodejs代码接收数据
var express = require('express');
var cors = require('cors');
var app = express();//创建express实例
app.use(cors());//为了解决跨域问题
var http = require('http').Server(app);
//var httpget = require('http');
var bodyParser = require('body-parser');
app.use(bodyParser.json({limit: '1mb'}));
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(express.static(__dirname));
app.post("/post/data",function(req,res){
console.log(req.body);
res.send("{ret:1}");
});
app.get("/",function(req,res){
res.send("{ret:ok}");
});
http.listen(8000, function () {
console.log('listening on *:8000');
});
如下图正常接收 如果服务器关闭,再打开,则会产生错误,程序不会退出,如下所示: