我尝试过此代码
axios
.post("http://localhost:3010/user/login", {
headers: {
"Content-type": "application/json"
},
body: JSON.stringify({ username: "username", password: "password" })
})
.then(response => {
this.resp = response;
})
.catch(e => {
console.error(e);
});
但是响应它无效登录但可以在邮递员中工作
这有什么问题?
在这样的网络响应中
答案 0 :(得分:1)
使用post发送对象时,该对象将转换为字符串,因此有效发送给API端点的是:
JSON.stringify(JSON.stringify({ username: "username", password: "password" }))
没有必要
此外,您不发送正文作为标题的一部分。
https://github.com/axios/axios#request-method-aliases
axios.post(URL [,data [,config]])
在您的情况下,这意味着您发送了三个参数,分别是url,数据和选项。由于您发送的唯一标头是json数据,而axios可以为您处理,因此不需要这种情况下的选项,因此您可以仅使用前两个参数
axios
.post(
"http://localhost:3010/user/login",
{
username: "username",
password: "password"
}
)
.then(response => {
this.resp = response;
})
.catch(e => {
console.error(e);
});
答案 1 :(得分:0)
更改标题 来自:
@Override
public ElasticsearchCustomConversions elasticsearchCustomConversions() {
return new ElasticsearchCustomConversions(Arrays.asList(
Smoking.SmokingToStringConverter.INSTANCE,
Smoking.StringToSmokingConverter.INSTANCE)
);
}
收件人
@Field(type = FieldType.Keyword)
private Smoking smoking;
现在尝试,它对我有用