我正在寻找一种简单的方法来构建网址,以便从支持各种查询参数的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文档,这些修饰符将添加到值之前。更新了示例以反映这一点,但总体思路保持不变:如何以直观的方式处理添加这些修饰符?