python - Bottle POST 或 PUT 请求看不到多个参数

标签 python rest curl bottle

我尝试使用 POST 或 PUT 传递多个参数,但我只得到第一个

@route('/command/', method='PUT')
def execute(command="Unknown"):
    param1 = request.query.get("param1")
    param2 = request.query.get("param2")
    param3 = request.query.get("param3")
    print("{} {} {} {}".format(command, param1, param2, param3))
    return "Executed {} {} {} {}".format(command, param1, param2, param3)

使用这样的请求:

curl -X PUT http://host:port/mycommand/?param1=value1&param2=value2&param3=value3

Bottle 日志:“PUT/command/?param1=value1 HTTP/1.1” param2 和 param3 打印为“None”,就像它们在 &

上被切断一样

最佳答案

您需要在 URL 两边加引号:

curl -X PUT "http://host:port/mycommand/?param1=value1&param2=value2&param3=value3"

关于python - Bottle POST 或 PUT 请求看不到多个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27326875/

相关文章:

c# - 将 CURL 转换为 C#

r - 使用带有 cURL、RCurl 和 httr 的 cookie 发布请求

python - Macbook 上的 scrapy 错误 : Module 'tutorial' already exists

python - 使用 Python 读取 UTF8 CSV 文件

javascript - 使用 Node Parse API 进行自托管 Parse Server

json - 无法生成 JSON - javax.ws.rs.WebApplicationException : com. sun.jersey.api.MessageException

node.js - Node.js如何正确引发错误?

java - 如何使用java复制curl命令?

python - Robot Framework::导入的库 'class'不包含关键字

python - 如何使用Python获取PE文件的指令?