http - 请求参数/查询字符串中是否存在有序对?在 GET 请求中
问题描述
我正在编写一个端点,将请求参数视为耦合的有序对(例如breed=labrador&name=fido
,breed=dalmnation&name=mike
等)在逻辑上是有意义的
我可以做些什么来从请求中强制执行这种配对(例如,有一个狗对象,dog1{breed=labrador&name=fido}&dog2{breed=dalmnation&name=mike}
或者我是否只是按顺序读取参数并知道给定查询知道顺序很重要,我必须相信参数将遵循品种,名称品种,名称等?
对于上下文,我的端点将在 GET 请求中接受 [1,15] 狗,如果这有所不同,我将使用 Django。
很抱歉,如果以前有人问过这个问题或者在其他地方有过这个问题,我正在努力寻找合适的词来在 Google 上找到解决方案。
解决方案
如果您使用的是GET
请求,则可以将 json 字符串放入其中一个 url 编码变量中。就像这个带有 python 请求库的例子:
import requests,json
dogs = [
{ "breed": "labrador", "name": "fido"},
{ "breed": "dalmnation", "name": "mike"}
]
payload = { "json": json.dumps(dogs) }
requests.get("http://endpoint", params = payload);
然后在接收端:
def my(request):
myDogs = json.loads(request.GET.get('json'))
推荐阅读
- python - 如何使用 boto3 从 Amazon S3 获取 .stl 文件?
- mongodb - NodeJS + mongo:池中实际使用了多少个连接?
- python - Postgres 返回 .strftime 无法识别的 datetime.date 类型列表
- mysql - 在单个 SQL 查询中进行计数
- entity-framework-6 - 实体框架迁移中复合主键顺序的意外更改
- javascript - 将创建的元素附加到 Javascript 中的不同 div
- python-3.x - Matlab 和 python 对 sind() 函数给出了不同的答案
- sql - 将 sql 查询转换为 laravel eloquent
- pandas - 使用字典方法在 Python 中重新编码?
- scala - 了解 Seq[AnyVal] 和 Seq[String] 的混合上下文边界