使用Python Requests库调用带有Lists的RESTful Web服务时遇到问题。
我正在从包含Set对象的数据中创建一个Python对象,但是我将它们转换为Lists,它可以正常工作(请注意,常量数据仅用于测试目的,该数据将来自文件):
countriesSet = set(["US", "DE"])
categoriesSet = set(["CAT1"])
body = {
"countries": list(countriesSet),
"categories": list(categoriesSet),
...
}
logging.debug("%s: body = %r" % (FUNCTION_NAME, body))
try:
callAddUpdateFavDestSvc(body)
日志:
body = {... 'countries': ['US', 'DE'], 'categories': ['CAT1'], ...}
然后我从上方用requests.request
字段呼叫body
:
response = requests.request(method, url, params = params, data = body)
但是,当我在微服务(Node.js
中使用restify
查看请求对象时,最终会“丢失”所有只有一个条目的列表的列表-它最终会变成一个字符串代替:
...,"countries":["US","DE"],"categories":"CAT1",...
我相信问题是requests.request()
正在发送的数据,而不是在接收端重新验证,因为我可以使用Postman成功传递单个元素列表,并且可以在我们的微服务中顺利进行curl。
如何让requests.request()
停止将我的单项输入列表转换为字符串?