python使用urllib发送post请求_使用python自带的http模块(urllib2)发送POST请求

当requests包无法预装时,该博客提供了一种解决方案:利用python内置的urllib2模块进行HTTP POST请求。示例代码展示了如何构造请求,设置headers,发送JSON数据,并解析响应内容。通过logging模块进行日志记录,确保请求过程的可追踪性。

python的requests的package非常好用,但是它必须预装。遇到无法预装的情况如何处理?可以使用python自带的package来处理http请求。

import logging

import json

import urllib2

logging.basicConfig(level=logging.DEBUG, format='%(asctime)s [PID:%(process)d] %(levelname)s --> %(message)s')

logger = logging.getLogger(__name__)

def post_cluster():

api_url = 'http://localhost:8080/hello'

api_token = 'hello-token'

logger.info('url:%s,api_token:%s', api_url, api_token)

json_obj = {}

json_obj['cluster_name'] = 'cluster_name'

json_obj['host'] = '127.0.0.1'

json_obj['port'] = 8080

headers = {'Content-Type': 'application/json', 'authToken': api_token}

data = json.dumps(json_obj)

logger.info('data:%s', data)

req = urllib2.Request(api_url, data, headers=headers)

response = urllib2.urlopen(req)

rs = response.read().decode()

print rs

result_obj = json.loads(rs)

if 0 == result_obj['status']:

logger.info('successfully!')

else:

logger.error('failed! ' + result_obj['errorMessage'])

pass

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值