Chciałbym zrobić HTTP DELETE z modułem zapytań Pythona, który następuje poniżej API;HTTP Usuń za pomocą modułu zapytań python
https://thingspeak.com/docs/channels#create
DELETE https://api.thingspeak.com/channels/4/feeds
api_key=XXXXXXXXXXXXXXXX
Używam Pythona v2.7 i żąda moduł. Mój kod python wygląda tak;
def clear(channel_id):
data = {}
data['api_key'] = 'DUCYS8xufsV613VX'
URL_delete = "http://api.thingspeak.com/channels/" + str(channel_id) + "/feeds"
r = requests.delete(URL_delete, data)
Kod nie działa, ponieważ request.delete() może zaakceptować tylko jeden parametr. Jak powinien wyglądać poprawny kod?
Dzięki! Testowana jako poprawna odpowiedź. Działa druga metoda. Jedna rzecz, której nie rozumiem. Dlaczego 'r = requests.delete (URL_delete, mydata)' nie działa, ale 'r = requests.delete (URL_delete, params = mydata)' działa? W przypadku Postu HTTP nie muszę używać parametrów. Dlaczego różnica? – user781486
Jeśli spojrzysz na https://github.com/kennethreitz/requests/blob/master/requests/api.py. Możesz zobaczyć, że 'post' jest zdefiniowany jako' post (url, data = None ...) 'podczas gdy delete jest zdefiniowany jako' delete (url, ** kwargs) '. Kwargs oznacza, że musi to być "kluczowy argument". Prace postu powodują jawne wyszczególnienie niektórych argumentów. –