如何对外屏蔽PC端F12下,调用的后端接口名?

发布于 2022-09-11 19:58:53 字数 414 浏览 35 评论 0

如图,F12查看XHR页面调用的后台接口

示例

不做处理的话会看到完整的接口名如queryArticles,接口名有时候会暴露业务逻辑,若想把后台接口名在这不展示真实的

比如,前端调用queryArticles,想在这个F12看的时候变成某个固定名,如ibigboy,所有前端访问后台接口在F12里看时都是ibigboy。

或者每一个接口名对应一个唯一的混淆后的,如queryArticles对应ibigboy,qureyArticleDetail对应itcode。

即实现两种:
1.F12时看到的非真实接口名但都是同样的接口名
2.F12时看到的非真实接口名且都不一样

该如何实现,求大佬指点

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

我一直都在从未离去 2022-09-18 19:58:53

我的理解,这个前端没法操作.
如果要实现你所说的效果,你需要让浏览器配合你,在 F12 的时候,显示的是一个 url,而发送请求使用的是另外一个 url.我觉得这个不太现实.
就算你真的有办法让浏览器配合你,我在中间加个代理就可以了,你浏览器发送请求总得发送真实的请求吧,直接拦截你的请求,你调用的接口名还是无所遁形.

所以这个还得从后端入手,后端将接口名修改成不会暴露你的业务逻辑,或者加一个中间层,后端不变,在中间层去处理跟后端的沟通,前端去跟中间层沟通,这样可以在中间层去修改对应的接口名.

前端代码没有秘密,当你运行的代码到浏览器那里之后就不可控了,所以最好的办法别让那些你认为有安全隐患的东西到达浏览器.

另外有一种技术称之为禁止调试,就是在代码中加入循环debugger的代码,如果有人打开调试,就会一直循环,然后一直卡着.不过这个可能只对初学者有用,能跳过的方法有很多.

说实话,代码都在别人手上了,还能怎么办,又没办法阻止别人去看它,通过混淆最多也只是增加对方的阅读成本,让对方不那么容易去理解逻辑而已.
我认为真正无敌的是,能做到不怕对方的看,爱看看呗,把重要的东西藏好,至于其他的,没那么重要的,就随它去吧.

行至春深 2022-09-18 19:58:53

不用F12,别人同样可以抓包得到接口名的,所以是很没必要做的事情,费力不讨好的事!要集中精力把接口的安全防范做好就好了!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文