【发布时间】:2016-10-27 06:57:15
【问题描述】:
短版:我可以只使用请求模块进行 POST、GET 和 DELETE 吗?
我正在尝试使用 Pinterest REST API。 (Pinterest API Explorer)
我走的是简单的路线,只是通过 oauth 手动获取了我的身份验证令牌,所以基本上我需要知道的只是 POST、GET 和 DELETE 到特定 URL 并包含参数,然后返回一个json。
我真的只需要三个API函数,列出授权用户的关注者(GET)、关注用户(POST)和取消关注用户(DELETE)。我需要的唯一参数是我手动获得的 access_token。
这似乎是一个简单的问题,但大约有 5 个 Python Pinterest API 包装器,它们都不完整,其中一些根本无法工作。我查看了 pycurl、httplib 和 requests 模块。它们看起来都有一个足够简单的 GET 方法,但使用 POST 和 DELETE 会变得更加复杂。看起来应该超级简单,一个函数,需要一个方法(POST/GET/DELETE/etc)、一个url和一组参数,为什么比这更复杂呢?如果这么简单,我不明白为什么所有这些 API 包装器都会完成一半,因为理论上它应该像为 API 中的每个函数调用具有这 3 个参数(第三个参数为数组)的函数一样简单.
在 Requests python 包中,RequestMethods 类下有这个函数: def request(self, method, url, fields=None, headers=None, **urlopen_kw)
看起来我理解除了标题和 **urlopen_kw 之外的所有内容,但我认为它应该在没有这些变量的情况下工作,对吗?
如果有人能指出我正确的方向,我将不胜感激。
【问题讨论】:
-
对简短版的回答:是的。
标签: python rest post get pinterest