前言
首先我们要了解什么是“墙”,这个视频很好的解释了墙的原理以及“科学上网”和“梯子”如何绕开墙。问:那么什么情况下需要去墙?
答:当界面出现显示混乱或无法交互时需要去墙。
问:去墙到底去的是什么?或者说什么东西被墙屏蔽了?
答:一些插件引用的国外前端库。
所以,FiveM圈子中大家经常说到的去墙就是让原本被GFW屏蔽的前端库可以正常访问。
常见的去墙方式有以下这几种:
- 使用相同的国内源
- 科学上网后把文件下载到插件内加载
给所有玩家发一个梯子,挂着梯子玩(雾)
教程
请注意,这需要你对HTML稍微有一点了解,如果没有的话可以去看这个教程。https://www.runoob.com/html/html-intro.html
第一步:找到需要去墙的链接
首先找到这个插件的HTML主页面文件,在资源清单(fxmanifest.lua/__resource.lua)中搜索ui_page
,打开它后面目录对应的HTML文件。搜索http,并逐个检查以下标签中的链接能否正常访问。
HTML:
<!-- CSS -->
<link href="http://example.com" rel="stylesheet">
<!-- JavaScript -->
<script src="https://example.com"></script>
HTML:
<!-- CSS -->
<link href="http://example.com" rel="stylesheet" integrity="XXXX" crossorigin="anonymous">
<!-- JavaScript -->
<script src="https://example.com" integrity="XXXX" crossorigin="anonymous"></script>
第二步:替换为可以使用的链接
如果你发现这个标签中的链接被墙了,可以选择下面任意一种方式,将它替换为可以使用的链接。还记得上面展示的“integrity”属性吗?在替换为其他链接后,建议将它移除,防止哈希值验证失败导致无法加载。
方法一:使用相同的国内源
优点:节省玩家和服务器的硬盘空间,方便快速缺点:有可能会失效
首先我们需要找一个收录开源库的国内CDN代理,这里推荐两个我在用的:
https://www.staticfile.net/
https://www.bootcdn.cn/
搜索此项目的名称,如“jquery”;并选择与原来相同的版本,如“3.5.1”。复制链接并替换。
HTML:
<!-- 原始链接 -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<!-- Staticfile CDN 国内源 -->
<script src='https://cdn.staticfile.net/jquery/3.5.1/jquery.min.js'></script>
方法二:科学上网后把文件下载到插件内加载
优点:永远不会失效缺点:占用玩家和服务器的硬盘空间,操作麻烦
科学上网并在浏览器中打开此链接,Ctrl+S保存为文件,将文件复制到插件文件夹内你想要的位置,在资源清单中引入该文件。
HTML:
<!-- 原始链接 -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<!-- 本地 -->
<script src='./lib/jquery.min.js'></script>
代码:
├─插件
│ ├─html
│ │ ├─lib
│ │ │ ├─jquery.min.js
│ │ ├─index.html
│ │ ├─fxmanifest.lua
lua:
files {
'html/lib/jquery.min.js',
'html/index.html',
}
结语
去墙教程到这里就结束了,有问题欢迎大家在评论区留言讨论
最后编辑: