簡體   English   中英

如何將 http 請求參數(標頭等)輸入到函數內的請求中?

[英]How can I input http request parameters (headers, etc) into a request within a function?

假設我有一個函數需要一些 *args(或 **kwargs??)用於 http 請求,並且我想在每次調用該函數時輸入不同的參數 - 類似於:

def make_some_request(self, *args)
    response = requests.get(*args)
    return response

其中*args在一種情況下可能是 url、標頭和參數,在另一種情況下可能是 url 和超時。 如何格式化才能使請求看起來像

response = requests.get(url, headers=headers, params=parameters)

在第一個函數調用和

response = requests.get(url, timeout=timeout)

在第二個函數調用中?

我想知道這是否可以使用 *args 或 **kwargs 但格式似乎不太正確。

你可以用**kwargs來做到這一點:

class Client:
    def make_some_request(self, *args, **kwargs)
        response = requests.get(*args, **kwargs)
        return response

client = Client()
client.make_some_request("https://domain.tld/path?param=value", timeout=...)
client.make_some_request("https://domain.tld/path?param=value", headers=..., params=...)

*args將負責傳遞位置參數(URL),而命名參數( timeoutheadersparams )將由**kwargs傳遞給requests.get

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM