构建支持各种运算符参数的REST URL查询?

时间:2014-08-24 20:41:09

标签: python json rest

我正在寻找一种简单的方法来构建网址,以便从支持各种查询参数的REST API中查询数据,而不只是' =':

Users/?name=John&lastname=!Jones

这将返回JSON数据,列出所有具有John名字的用户,该名称没有Jones的姓氏。

Python的Requests库能够在字典中指定参数,例如:

args= { "name" : "John", "lastname" : "Jones" }

这会让我使用字典来指定url参数,但这会给我一个url后缀:

Users/?name=John&lastname=Jones

似乎请求只是插入' ='键和键之间的值,我需要能够支持许多其他运算符。

我的一个想法是编写一个用于构建URL的类,我可以为每个参数使用点表示法:

buildquery('Users').equals( 'name', 'John').not('lastname','Jones')

每个点函数都会附加到url字符串。


有没有更好的方法在Python中为REST API构建更复杂的url查询?或者我应该使用自己的类来处理它以处理每种类型的运算符吗?

编辑重读API文档,这些修饰符将添加到值之前。更新了示例以反映这一点,但总体思路保持不变:如何以直观的方式处理添加这些修饰符?

0 个答案:

没有答案