Aşağıdaki API'yı izleyen python istekleri modülüyle bir HTTP DELETE yapmak istiyorum; HTTP python istekleri modülü ile silme
https://thingspeak.com/docs/channels#create
DELETE https://api.thingspeak.com/channels/4/feeds
api_key=XXXXXXXXXXXXXXXX
Python v2.7 kullanıyorum ve modül istekleri ediyorum. Benim python kodum böyle görünüyor;
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)
requests.delete() yalnızca bir parametre kabul edebilir çünkü kod çalışmaz. Doğru kod nasıl görünmeli? Sen
import json
mydata = {}
mydata['api_key'] = "Jsa9i23jka"
r = requests.delete(URL_delete, data=json.dumps(mydata))
istiyorum
Teşekkürler! Doğru cevap olarak test edildi. 2. yöntem çalışır. Anlamadığım bir şey var. Neden "r = request.delete (URL_delete, mydata)" başarısız, ancak "r = request.delete (URL_delete, params = mydata)" neden çalışıyor? HTTP Post için param kullanmam gerekmiyor. Neden farkı? – user781486
https://github.com/kennethreitz/requests/blob/master/requests/api.py adresine bakınız. 'Post' 'post (url, data = None ...) 'olarak tanımlanırken, delete' delete (url, ** kwargs)' olarak tanımlanırken görebilirsiniz. Kwargs, bunun 'anahtarlı bir argüman' olması gerektiği anlamına gelir. Gönderme çalışmaları, bazı argümanların açık bir şekilde listelenmesine neden oluyor. –