真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python怎樣通過(guò)get方式,post方式發(fā)送http請(qǐng)求和接收http響應(yīng)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)python怎樣通過(guò)get方式,post方式發(fā)送http請(qǐng)求和接收http響應(yīng),文章內(nèi)容豐富且以專(zhuān)業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)建站主要從事成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)本溪,十余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專(zhuān)業(yè),歡迎來(lái)電咨詢(xún)建站服務(wù):18982081108

1.GET方法

get方法是直接將要請(qǐng)求的數(shù)據(jù)放在url中,下面用httplib和urllib2模擬用戶(hù)登錄。

1)

    #URL地址

    url_Addr = "https://apac-axlprod01-api.com:8081/userLogin?"

    #用戶(hù)登陸需要傳遞的參數(shù)

    params = urllib.urlencode({'name': user_name, 'password': user_pwd, 'appId': app_Id})

    #我安裝的python證書(shū)好像有問(wèn)題,失能校驗(yàn)

    ssl._create_default_https_context = ssl._create_unverified_context

    #將參數(shù)和URL組成一個(gè)URL

    req = urllib2.Request(url_Addr+params)

    res = urllib2.urlopen(req)

    data = res.read()

    res.close()

2)

    #URL地址

    url_Addr = "apac-axlprod01-api.com:8081"

    #用戶(hù)登陸需要傳遞的參數(shù)

    params = urllib.urlencode({'name': user_name, 'password': user_pwd, 'appId': app_Id})

    ssl._create_default_https_context = ssl._create_unverified_context

    conn = httplib.HTTPSConnection(url_Addr)

    #將參數(shù)和URL組成一個(gè)URL

    conn.request("GET", "/userLogin?" + params)

    response = conn.getresponse()

    data = response.read()

    response.close()

2.POST方法

POST方法是直接將要請(qǐng)求的數(shù)據(jù)放在data或body中,不能放在url中,下面用httplib和urllib2模擬用戶(hù)登錄。

1)

    #URL地址

    url_Addr = "https://apac-axlprod01-api.com:8081/userLogin"

    #用戶(hù)登陸需要傳遞的參數(shù)

    params = urllib.urlencode({'name': user_name, 'password': user_pwd, 'appId': app_Id})

    ssl._create_default_https_context = ssl._create_unverified_context

    #傳入U(xiǎn)RL和Data

    req = urllib2.Request(url = url_Addr,data = params)

    res = urllib2.urlopen(req)

    data = res.read()

    res.close()

2)

    #URL地址

    url_Addr = "apac-axlprod01-api.com"

    #headers

    headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}

    #用戶(hù)登陸需要傳遞的參數(shù)

    params = urllib.urlencode({'name': user_name, 'password': user_pwd, 'appId': app_Id})

    ssl._create_default_https_context = ssl._create_unverified_context

    conn = httplib.HTTPSConnection(url_Addr,8081)

    #傳入U(xiǎn)RL、body和headers

    conn.request("POST","/userLogin",params,headers)

    response = conn.getresponse()

    data = response.read()

    response.close()

httplib實(shí)現(xiàn)了http和https的客戶(hù)端協(xié)議,但是在python中,模塊urllib和urllib2對(duì)httplib進(jìn)行了更上層的封裝

下面詳細(xì)介紹httplib提供的常用類(lèi)型和方法。

httplib.HTTPConnection ( host [ , port [ , strict [ , timeout ]]] )

HTTPConnection類(lèi)的構(gòu)造函數(shù),表示一次與服務(wù)器之間的交互,即請(qǐng)求/響應(yīng)。參數(shù)host表示服務(wù)器主機(jī), 如:www.csdn.net;port為端口號(hào),默認(rèn)值為80; 參數(shù)strict的 默認(rèn)值為false, 表示在無(wú)法解析服務(wù)器返回的狀態(tài)行時(shí)( status line) (比較典型的狀態(tài)行如: HTTP/1.0 200 OK ),是否拋BadStatusLine 異常;可選參數(shù)timeout 表示超時(shí)時(shí)間。

HTTPConnection提供的方法:

HTTPConnection.request ( method , url [ , body [ , headers ]] )

調(diào)用request 方法會(huì)向服務(wù)器發(fā)送一次請(qǐng)求,method 表示請(qǐng)求的方法,常用有方法有g(shù)et 和post和head ;url 表示請(qǐng)求的資源的url ;body 表示提交到服務(wù)器的數(shù)據(jù),必須是字符串(如果method 是"post" ,則可以把body 理解為html 表單中的數(shù)據(jù));headers 表示請(qǐng)求的http 頭。

HTTPConnection.getresponse ()

獲取Http 響應(yīng)。返回的對(duì)象是HTTPResponse 的實(shí)例,關(guān)于HTTPResponse 在下面 會(huì)講解。

HTTPConnection.connect ()

連接到Http 服務(wù)器。

HTTPConnection.close ()

關(guān)閉與服務(wù)器的連接。

HTTPConnection.set_debuglevel ( level )

設(shè)置高度的級(jí)別。參數(shù)level 的默認(rèn)值為0 ,表示不輸出任何調(diào)試信息。

httplib.HTTPResponse

HTTPResponse表示服務(wù)器對(duì)客戶(hù)端請(qǐng)求的響應(yīng)。往往通過(guò)調(diào)用HTTPConnection.getresponse()來(lái)創(chuàng)建,它有如下方法和屬性:

HTTPResponse.read([amt])

獲取響應(yīng)的消息體。如果請(qǐng)求的是一個(gè)普通的網(wǎng)頁(yè),那么該方法返回的是頁(yè)面的html??蛇x參數(shù)amt表示從響應(yīng)流中讀取指定字節(jié)的數(shù)據(jù)。

HTTPResponse.getheader(name[, default])

獲取響應(yīng)頭。Name表示頭域(header field)名,可選參數(shù)default在頭域名不存在的情況下作為默認(rèn)值返回。

HTTPResponse.getheaders()

以列表的形式返回所有的頭信息。

HTTPResponse.msg

獲取所有的響應(yīng)頭信息。

HTTPResponse.version

獲取服務(wù)器所使用的http協(xié)議版本。11表示http/1.1;10表示http/1.0。

HTTPResponse.status

獲取響應(yīng)的狀態(tài)碼。如:200表示請(qǐng)求成功。

HTTPResponse.reason

返回服務(wù)器處理請(qǐng)求的結(jié)果說(shuō)明。一般為”O(jiān)K”

上述就是小編為大家分享的python怎樣通過(guò)get方式,post方式發(fā)送http請(qǐng)求和接收http響應(yīng)了,如果剛好有類(lèi)似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


本文題目:python怎樣通過(guò)get方式,post方式發(fā)送http請(qǐng)求和接收http響應(yīng)
文章URL:http://weahome.cn/article/jjcids.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部