python 发送post数据,捕获异常

Posted qianbo_insist

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 发送post数据,捕获异常相关的知识,希望对你有一定的参考价值。

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');
);

如下图正常接收

如果服务器关闭,再打开,则会产生错误,程序不会退出,如下所示:

以上是关于python 发送post数据,捕获异常的主要内容,如果未能解决你的问题,请参考以下文章

PHP 不捕获由 ajax jquery 在同一页面上发送的 $_POST 数据

AJAX POST 处理程序导致“未捕获的异常”

使用 fiddler 捕获 Windows 商店应用程序流量引发异常

NSUrl POST 错误

如何捕获 Shopify Webhook 发送的 HTTP POST 请求

.NET Web 浏览器组件,允许您捕获 GET 和 POST 数据