python urllib2 http get、post请求的区别

python urllib2 实现HTTP 的GET POST 请求

python 一般可以用模块urllib2 来实现GET POST的http 请求

GET  请求

  1.      import os,sys

  2. import os,sys

  3. import urllib2

  4. http_str = 'http://127.0.0.1:12345/apps/' + serviceLine + '/clusters/' + clusterName

  5. url = http_str + '/machine_info'

  6. req = urllib2.Request(url) # url 转换成发起get 请求的url

  7. result = urllib2.urlopen(req) # 发起GET http服务

  8. res = result.read() #把结果通过.read()函数读取出来

  9. slave_info = json.loads(res) #把返回结果(string) 转换成json,方便处理,

  10. print slave_info['content']['slave'] # 打印json 串的dict 信息


POST 请求 【post 跟get 去请求的区别是部分参数写在程序里面,不是在http 请求里面】

  1.      import os,sys

  2. import os,sys

  3. import urllib2

  4. http_str = 'http://127.0.0.1:12345/apps/' + serviceLine + '/clusters/' + clusterName

  5. url1 = http_str + '/ops/rpm_update' # url 部分

  6. params1 = {"app_rpm_id":"-1","rpm_xxx":rpmxxxxx} #参数部分

  7. params = json.dumps(params1) # http 服务器要求传入的params 必须是json 对象,所以这里需要转换一下;如果http 服务器没有要求,就可以不转换

  8.       

  9. response = urllib.urlopen(url1,params) #发送POST 请求 print response # 因为http 服务器已经规定好返回的结果就是一个json 对象,所以不用再转换成json;

  10. print response.read() # 把结果数据通过read()读出来;如果http返回的不是json 对象,还需要转换成json 对象

相关文章
相关标签/搜索