我在将数据传递给 Vuejspost方法时遇到问题。我正在使用 vue-resource 并且在文档中是:
this.$http.post('/someUrl', [body], [options]).then(successCallback, errorCallback);
Run Code Online (Sandbox Code Playgroud)
我想放置标题并且它可以正常工作(服务器读取标题正确):
this.$http.post(
'http://localhost:8081/login',
{
headers: {
'Accept': 'application/json'
}
});
Run Code Online (Sandbox Code Playgroud)
但是如果我尝试添加任何数据就会出错,例如我尝试过:
this.$http.post(
'http://localhost:8081/login',
{username: 'admin'},
{
headers: {
'Accept': 'application/json'
}
});
Run Code Online (Sandbox Code Playgroud)
或定义一些数据并放在那里,例如:
this.$http.post(
'http://localhost:8081/login',
this.data,
{
headers: {
'Accept': 'application/json'
}
});
Run Code Online (Sandbox Code Playgroud)
并且对于这两种解决方案,主体部分始终为空 - 使用以下方法检查请求中的主体数据:
body = req.getReader().lines().collect(Collectors.joining(System.lineSeparator()));
Run Code Online (Sandbox Code Playgroud)
可能问题出在 vue.js 代码中,因为它工作正常,我从 Postman 发送任何请求。我该怎么办?
您是否尝试过在不包含 post 的第三个参数的情况下发送 post 请求
this.$http.post('url', {something: "string"})
.then ((res)=> console.log (res.body))
.catch ((error)=> console.log(error))
Run Code Online (Sandbox Code Playgroud)
这对我有用...
另一件事,你确定你在后端正确地获取了请求数据......它看起来像python,我不完全确定它是如何工作的。
| 归档时间: |
|
| 查看次数: |
24440 次 |
| 最近记录: |