Heim  >  Artikel  >  Backend-Entwicklung  >  Python向PHP发起GET与POST请求

Python向PHP发起GET与POST请求

WBOY
WBOYOriginal
2016-06-23 13:47:541291Durchsuche


     CloudBean项目中到PHP开发WEB管理端,用Python开发服务控制端,在项目中Python的服务控制端有时候需要主动连接PHP的WEB管理端下载或上传配置参数或数据信息,这里采用的原理是Python模拟Http客户端,向PHP所在的Apache发起Get或Post请求。

     这里将实现的技术代码进行公开。


 一、Python以GET请求的方式,请求PHP页面,并获得返回值

1、python代码:      

<span xmlns="http://www.w3.org/1999/xhtml" >[root@AY python]#cat httpclientget.py #!/usr/bin/env python#coding=utf8import httplibhttpclient=Noneprint 'bb'try:    httpclient=httplib.HTTPConnection('www.xxx.org',80)    httpclient.request('GET','/CloudBean/capture.php?name=liu&pass=wew')    res=httpclient.getresponse()    print res.status    print res.reason    print res.read()except  Exception,e:    print "heelowr"</span>

2、php代码:     
<span xmlns="http://www.w3.org/1999/xhtml" >[root@AY python]#cat /CloudBean/capture.php <?php echo $_GET["name"];  echo $_GET["pass"];  echo "GET:";?></span>

二、Python以 Post请求的方式,请求PHP页面,并获得返回值

1、Python代码:

<span xmlns="http://www.w3.org/1999/xhtml" >[root@AY python]#cat httpclientpost.py #!/usr/bin/env python#coding=utf8import httplib,urllibhttpclient=Nonetry:    params = urllib.urlencode({'name': 'tom', 'pass': 22})    print 'aaa'    headers = {"X-CPU": "arm/x86" , "X-USER": "234299044218541","X-RESOLUTION": "240x320","X-SYSTEM":"2.3","X-LANG":"en-us","X-SIGN":"a1ae6bee406a6b8aa0862969ba49cc1d", "X-IMSI":"3110012345678912","X-COUNTRY":"in","X-TIME":"1335339139"}    httpclient=httplib.HTTPConnection('www.xxx.org',80)    httpclient.request('POST','/CloudBean/cappost.php',params,headers)    res=httpclient.getresponse()    print res.status    print res.reason    print res.read()    print res.getheaders()except  Exception,e:    print "error"</span>
2、PHP代码:

<span xmlns="http://www.w3.org/1999/xhtml" >[root@AY python]#cat /CloudBean/cappost.php <?php echo $_POST["name"];  echo $_POST["pass"];  echo "post";?></span>



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:重写PHP的explode方法Nächster Artikel:php怎么修改表内字段内容