[英]python function for HTTP calls
我有一個腳本,該腳本使用存儲在“ my_dict”變量中的字典以及url,user,password和“ id”變量的值。 然后,腳本根據傳遞的標頭對URL進行HTTP GET調用。 如何創建與此等效的Python函數? 以及以后如何為另一組網址,用戶,密碼等使用該功能?
import urllib, urllib2, base64, json
my_dict = {'server': {'user': 'patrick', 'url': 'http://192.168.0.1/tasks', 'password': 'secret'}}
id = "8d4lkf8kjhla8EnsdAjkjFjkdb6lklne"
for value in my_dict.keys():
url = my_dict[value]['url']
pass = my_dict[value]['password']
authKey = base64.b64encode("patrick:"+str(pass))
headers = {"login-session": id, "Content-Type": "application/json", "Authorization": "Basic " + authKey}
data = {"param": "value"}
request = urllib2.Request(url)
for key, value in headers.items():
request.add_header(key, value)
response = json.load(urllib2.urlopen(request))
print response
您的問題有很多子問題,例如您想要什么變量或常量? 你知道語法嗎? 您的功能將如何使用? 等等等
因此,獲得答案的最好方法是學習一些基礎知識,例如python的函數語法的此處 ( 免費 )。 之后,您可能會很好地回答您的問題。
如果我對您的理解正確,則這樣的簡單功能將起作用,
def send_request(my_dict, id):
for value in my_dict.keys():
url = my_dict[value]['url']
pass = my_dict[value]['password']
authKey = base64.b64encode("patrick:"+str(pass))
headers = {"login-session": id, "Content-Type": "application/json", "Authorization": "Basic " + authKey}
data = {"param": "value"}
request = urllib2.Request(url)
for key, value in headers.items():
request.add_header(key, value)
response = json.load(urllib2.urlopen(request))
print response
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.