如何在 web.py 服务器应用程序中从 Post 获取 JSON 值?
How to obtain JSON value from Post in a web.py server app?
我正在使用 Python 2.7.6 和 web.py 服务器来试验一些简单的 Rest 调用...
希望向我的服务器发送一个 JSON 负载,然后打印负载的值...
有效负载示例
{"name":"Joe"}
这是我的 python 脚本
#!/usr/bin/env python
import web
import json
urls = (
'/hello/', 'index'
)
class index:
def POST(self):
# How to obtain the name key and then print the value?
print "Hello " + value + "!"
if __name__ == '__main__':
app = web.application(urls, globals())
app.run()
这是我的 cURL 命令:
curl -H "Content-Type: application/json" -X POST -d '{"name":"Joe"}' http://localhost:8080/hello
我期待这样的响应(纯文本):
Hello Joe!
感谢您花时间阅读本文...
您必须解析 json:
#!/usr/bin/env python
import web
import json
urls = (
'/hello/', 'index'
)
class index:
def POST(self):
# How to obtain the name key and then print the value?
data = json.loads(web.data())
value = data["name"]
return "Hello " + value + "!"
if __name__ == '__main__':
app = web.application(urls, globals())
app.run()
此外,请确保您的 url 是 http://localhost:8080/hello/
在您的 cURL
请求中;您的示例中有 http://localhost:8080/hello
,这会引发错误。
我正在使用 Python 2.7.6 和 web.py 服务器来试验一些简单的 Rest 调用...
希望向我的服务器发送一个 JSON 负载,然后打印负载的值...
有效负载示例
{"name":"Joe"}
这是我的 python 脚本
#!/usr/bin/env python
import web
import json
urls = (
'/hello/', 'index'
)
class index:
def POST(self):
# How to obtain the name key and then print the value?
print "Hello " + value + "!"
if __name__ == '__main__':
app = web.application(urls, globals())
app.run()
这是我的 cURL 命令:
curl -H "Content-Type: application/json" -X POST -d '{"name":"Joe"}' http://localhost:8080/hello
我期待这样的响应(纯文本):
Hello Joe!
感谢您花时间阅读本文...
您必须解析 json:
#!/usr/bin/env python
import web
import json
urls = (
'/hello/', 'index'
)
class index:
def POST(self):
# How to obtain the name key and then print the value?
data = json.loads(web.data())
value = data["name"]
return "Hello " + value + "!"
if __name__ == '__main__':
app = web.application(urls, globals())
app.run()
此外,请确保您的 url 是 http://localhost:8080/hello/
在您的 cURL
请求中;您的示例中有 http://localhost:8080/hello
,这会引发错误。