在 angular6 中传递 JSON.stringfy 中的多个值
Passing multiple values in JSON.stringfy in angular6
我尝试使用 JSON.stringfy() 将多个值传递给 API。我不知道为什么我的第二个值没有通过。
这是我尝试的代码:
getUserDetails(email, password){
this.api="http://192.168.1.14/task/public/api/login";
this.http.post(this.api,JSON.stringify(email,password))
.subscribe(data =>
{
if(data !=null)
{
console.log("LoggedIn Sucess");
}
else{
console.log("Login Failed");
}
})
}
这是正常的,它只适用于一个值,事实上现在您只收到 "email"。
两个或更多输入的正确语法是
this.http.post(this.api,JSON.stringify([email,password]))
您将收到[电子邮件、密码]
JSON.stringify 顾名思义,将 JavaScript 对象 转换为字符串表示形式。最有可能交换日期 to/from 的网络服务器。
此函数需要只有一个必需的参数,即您要字符串化的对象。您获得电子邮件值而不是密码的原因是 javascript 忽略了第二个参数。
话虽如此,您可以将您的值以这种格式传递到数组对象中
JSON.stringify([email,password])
在这种情况下,您的变量 应被字符串化 为两个字符串值的数组,例如 ["some@emailadress.com","somestring"]
另一种方法是将对象字符串化,例如
JSON.stringify({email, password})
在这种情况下,您的变量应像这样被字符串化为 javascript 对象
{"email":"some@emailadress.com", "password":"somestring"}
您也可以像这样构建自己的 JSON 对象
JSON.stringify({emailaddress:email, passwordValue: password})
构造 JavaScript 对象的好处是在服务器端您可以接收带有名称的参数。
谢谢。
JSON.stringify() 方法将 JavaScript 对象或值转换为 JSON 字符串,如果指定了替换函数,则可选择替换值,或者如果指定了替换数组,则可选择仅包含指定的属性。
JSON.stringify 顾名思义,将 JavaScript object 转换为字符串表示形式。
所以试试这个:
getUserDetails(email, password){
this.api="http://192.168.1.14/task/public/api/login";
this.http.post(this.api,JSON.stringify({email: email, password: password}))
.subscribe(data => {
if(data != null) {
console.log("loggedIn success");
} else {
console.log("loggedIn failed");
}
})
}
我尝试使用 JSON.stringfy() 将多个值传递给 API。我不知道为什么我的第二个值没有通过。
这是我尝试的代码:
getUserDetails(email, password){
this.api="http://192.168.1.14/task/public/api/login";
this.http.post(this.api,JSON.stringify(email,password))
.subscribe(data =>
{
if(data !=null)
{
console.log("LoggedIn Sucess");
}
else{
console.log("Login Failed");
}
})
}
这是正常的,它只适用于一个值,事实上现在您只收到 "email"。
两个或更多输入的正确语法是
this.http.post(this.api,JSON.stringify([email,password]))
您将收到[电子邮件、密码]
JSON.stringify 顾名思义,将 JavaScript 对象 转换为字符串表示形式。最有可能交换日期 to/from 的网络服务器。
此函数需要只有一个必需的参数,即您要字符串化的对象。您获得电子邮件值而不是密码的原因是 javascript 忽略了第二个参数。
话虽如此,您可以将您的值以这种格式传递到数组对象中
JSON.stringify([email,password])
在这种情况下,您的变量 应被字符串化 为两个字符串值的数组,例如 ["some@emailadress.com","somestring"]
另一种方法是将对象字符串化,例如
JSON.stringify({email, password})
在这种情况下,您的变量应像这样被字符串化为 javascript 对象 {"email":"some@emailadress.com", "password":"somestring"}
您也可以像这样构建自己的 JSON 对象
JSON.stringify({emailaddress:email, passwordValue: password})
构造 JavaScript 对象的好处是在服务器端您可以接收带有名称的参数。
谢谢。
JSON.stringify() 方法将 JavaScript 对象或值转换为 JSON 字符串,如果指定了替换函数,则可选择替换值,或者如果指定了替换数组,则可选择仅包含指定的属性。
JSON.stringify 顾名思义,将 JavaScript object 转换为字符串表示形式。
所以试试这个:
getUserDetails(email, password){
this.api="http://192.168.1.14/task/public/api/login";
this.http.post(this.api,JSON.stringify({email: email, password: password}))
.subscribe(data => {
if(data != null) {
console.log("loggedIn success");
} else {
console.log("loggedIn failed");
}
})
}