• Python向PHP发起GET与POST请求



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

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


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

    1、python代码:      

    <span xmlns="http://www.w3.org/1999/xhtml" style="">[root@AY python]#cat httpclientget.py 
    #!/usr/bin/env python
    #coding=utf8
    
    import httplib
    
    httpclient=None
    print '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" style="">[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" style="">[root@AY python]#cat httpclientpost.py 
    #!/usr/bin/env python
    #coding=utf8
    
    import httplib,urllib
    
    httpclient=None
    try:
        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" style="">[root@AY python]#cat /CloudBean/cappost.php 
    <?php 
      echo $_POST["name"];
      echo $_POST["pass"];
      echo "post";
    ?

    > </span>




  • 相关阅读:
    完成登录与注册页面的前端
    JavaScript 基础,登录验证
    CSS实例:图片导航块
    导航,头部,CSS基础
    web基础,用html元素制作web页面
    web基础
    timestamp与timedelta,管理信息系统概念与基础
    datetime处理日期和时间
    加载静态文件,父模板的继承和扩展
    开始Flask项目
  • 原文地址:https://www.cnblogs.com/claireyuancy/p/6742956.html
Copyright © 2020-2023  润新知