使用 axios 对 cherrypy 函数的 POST 请求时输入被忽略
Input being ignored on POST request with axios to a cherrypy function
所以我不确定代码的哪一边是错误的,是 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 之类的参数将始终为空,无论我反复检查多少次以确保正确发送内容。
关于问题实际出在哪里以及如何解决它有什么想法吗?
编辑:不确定是否相关,但我尝试 post 的数据确实出现在请求负载中
阅读 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
所以我不确定代码的哪一边是错误的,是 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 之类的参数将始终为空,无论我反复检查多少次以确保正确发送内容。
关于问题实际出在哪里以及如何解决它有什么想法吗?
编辑:不确定是否相关,但我尝试 post 的数据确实出现在请求负载中
阅读 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