Angular 如何在角度视图中从前端隐藏数据
我有一个angular 5应用程序,我想从中发出http请求,该请求将以以下格式命中URL: {{myemail@gmail.com}}&pass={{my 密码}&input={{{user input} 这将给我一个json响应 表单只有一个输入框,用户将在其中填写“用户输入”。 除此之外,我需要发送一封硬编码的电子邮件和密码,出于安全目的,我不能将其保存在客户端Angular 如何在角度视图中从前端隐藏数据,angular,Angular,我有一个angular 5应用程序,我想从中发出http请求,该请求将以以下格式命中URL: {{myemail@gmail.com}}&pass={{my 密码}&input={{{user input} 这将给我一个json响应 表单只有一个输入框,用户将在其中填写“用户输入”。 除此之外,我需要发送一封硬编码的电子邮件和密码,出于安全目的,我不能将其保存在客户端 任何关于如何隐藏它的建议。首先,您不希望将这些值作为url参数提交,因为它们将在地址栏中公开: https://example.
任何关于如何隐藏它的建议。首先,您不希望将这些值作为url参数提交,因为它们将在地址栏中公开:
https://example.com/api?email={{myemail@gmail.com}}&pass={{my password}}&input={{user input}}
而是向特定端点发送帖子或补丁,如下所示:
https://example.com/api/user
并将数据包含在JSON正文中,类似于:
{
"email":"mickey@disney.com",
"pass":"whatever"
"input":"user data"
}
putUserData(body: any){
const headers = new Headers({'Content-Type': 'application/json'});
const options = new RequestOptions({ headers: headers });
const url = 'https://example.com/api/user';
return this._http.patch(url, body, options)
.map((response: Response) => response.json())
}
在调用此端点之前,请先调用另一个端点以获取硬编码的电子邮件和密码,例如:
得到
这将提供包含该数据的JSON响应:
{
"email":"mickey@disney.com",
"pass":"whatever"
}
当用户提交表单时,您可以将此对象与表单对象合并。这样,您就不会在客户机上硬编码这些数据,也不会将其存储在客户机上的任何位置
但这仍然不是一个安全的解决方案,因为您正在传递凭据,如果黑客有足够的决心,则很容易获得凭据。