所以我不确定代码的哪一边是错误的,javascript还是python。
基本上我有reactjs表单,然后将其提交到服务器并通过cherrypy函数进行处理。据称,请求本身正在处理,但他们没有收到我发送的任何数据。
以下是其中一个请求和 python 函数的示例:
handleSubmit(e){
var example = this.props.value;
const request = axios.post(someUrl+'/pythonFunction', {example})
.then(function(response){
console.log('successfully posted', example);
})
}
现在这是正在执行此操作的函数的 Python 代码:
@cherrypy.tools.allow(methods='POST')
@cherrypy.tools.json_out()
def pythonFunction(self, **kwargs):
# does stuff with data received
所以,问题是 python 端没有收到任何信息。无论我如何双重和三重检查以确保事物正确发送,诸如 kwargs 之类的参数将始终为空。
关于问题实际出在哪里以及如何解决它有什么想法吗?
编辑:不确定是否相关,但我尝试发布的数据确实出现在请求负载上
请您参考如下方法:
以下是如何读取 JSON 格式的有效负载(通过任何 HTTP 方法提交,其中包括正文):
@cherrypy.tools.allow(methods='POST')
@cherrypy.tools.json_out()
@cherrypy.tools.json_in()
def pythonFunction(self, *args **kwargs):
data = cherrypy.request.json
return data