如何在angular中加密和解密URL
在我的项目中,这里有两个模块(员工、代理)。我点击代理模块列表,URL显示代理/列表并更新一个代理,URL传递id对应的id。但我希望加密数据在URL中传递更新和列表。那么如何在Angular 6中传递加密(用户不理解)值呢如何在angular中加密和解密URL,angular,angular6,Angular,Angular6,在我的项目中,这里有两个模块(员工、代理)。我点击代理模块列表,URL显示代理/列表并更新一个代理,URL传递id对应的id。但我希望加密数据在URL中传递更新和列表。那么如何在Angular 6中传递加密(用户不理解)值呢 return this.repository.postData('api/agent/list', requestObj); 您可以通过使用atob和btoa功能来实现这一点。以下是一个例子: console.log(btoa("some data")); // thi
return this.repository.postData('api/agent/list', requestObj);
您可以通过使用
atob
和btoa
功能来实现这一点。以下是一个例子:
console.log(btoa("some data")); // this will encode the data
console.log(atob("some data")); // this will decode the data
因此,您需要像这样实施:
return this.repository.postData('api/agent/list', btoa(requestObj));
您可以通过以下方式在onInit函数上访问参数:
注意:您的url应该类似于localhost:4200/lib/123/32
然后,sosid的值为123,xy的值为32
加密和解密的方式由您决定。有很多方法可以做到这一点。这取决于你。例如,您可以决定在编码时将每个ASCII键移一位,然后在解码时将它们移回原处
例如,如果您决定该移位,并且url是…/lib/353/47,那么实际数据将是:
abc : 242
xy : 36
在我的项目中添加btoa()函数。但是,更新第一条记录的url看起来像api/agent/details/1。先生,我将id更改为1到2。数据未检索。我认为这很有用,但我要求更新id显示加密字符串看起来像“api/agent/details/SGVsbG8gV29ybGQh”。是否可能???@SARAVANAKUMAR是的,如果我使用btoa(“密码”)对“密码”字符串进行编码;它看起来像这个console.log(btoa(“密码”);//o/p cGFzc3dvcmQ=so在ts中,当您想执行api调用或只想使用编码值时,您需要做的就是使用atob()对加密字符串进行解码;我期望的URL看起来像“localhost:4200/api/agent/details/SGVsbG8gV29ybGQh”。可能吗???请给出任何建议。。。但是,我的实际URL‘localhost:4200/api/agent/details/1’先生,这里有任何可能性……请向我推荐@Naveen
const abc = this.activatedroute.snapshot.params['abc'];
const xy = this.activatedroute.snapshot.params['xy'];
abc : 242
xy : 36