我想用跟随下面的API的python requests模块做一个HTTP DELETE;使用python请求模块进行HTTP删除
https://thingspeak.com/docs/channels#create
DELETE https://api.thingspeak.com/channels/4/feeds
api_key=XXXXXXXXXXXXXXXX
我使用python V2.7并请求模块。我的Python代码看起来像这样;
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()只能接受一个参数。正确的代码应该如何?
谢谢!经过测试是正确的答案。第二种方法起作用。有一件事我不明白。为什么'r = requests.delete(URL_delete,mydata)'失败,但是'r = requests.delete(URL_delete,params = mydata)'有效?对于HTTP Post,我不需要使用参数。为什么区别? – user781486
如果你看看https://github.com/kennethreitz/requests/blob/master/requests/api.py。你可以看到'post'被定义为'post(url,data = None ...)',而delete被定义为'delete(url,** kwargs)'。 kwargs意味着它必须是一个“键控论证”。发布作品会使其显式列出一些参数。 –