我正在尝试开发对游戏的修改。事情是游戏已经编译,开发人员不喜欢反编译游戏(当时正在进行)。由于编译可能,每次我尝试加载JQuery或Node.js无论什么版本我得到错误“一个键已经存在于字典中”。没有Node.js或JQuery.js,一切都很好。
我想要实现的是为游戏添加一些功能,遗憾的是这些功能无法通过游戏的API函数调用本身获得。我希望能够访问数据内部.xml文件用于项目/武器/设备/引擎项目的内部游戏。我已经尝试了几乎所有我在Stackexchange上找到的东西,我搜索的是Node和JQuery。对不起,如果你们认为这是一个重复的问题。因为它不是。我不能使用Node.js也不能使用JQuery。我还能尝试什么?请有人帮帮我。
我对编程只有一年的c#和Javascript经验有点新。对不起,如果这对你们感觉真的不合适。
答案 0 :(得分:0)
你需要的是ajax。现代浏览器提供了非常实用的XMLHttpRequest
,因此您甚至不再需要框架。
要知道的一件重要事情:如果由于同源策略,您很可能无法使用ajax下载xml文件(如果它位于远程服务器上)。您需要可靠的访问权限。最方便的解决方案是在本地服务器上拥有该文件的副本,例如WAMP,XAMPP等。
我不打算再编写另一个ajax教程。 Insteal我只会为您提供一个有效的最小HTML页面,并指向XMLHttpRequest documentation。
<button>Request</button>
<script>
'use strict';
document.querySelector('button').addEventListener('click',
function () {
let req = new XMLHttpRequest();
req.onload = function () {
if (this.responseXML) {
console.log(this.responseXML);
}
else {
console.log(this.responseText);
}
};
req.open('GET', xmlURL); // xmlURL should be the location of the .xml file
req.send();
});
</script>
当您单击该按钮时,脚本将请求,然后在浏览器控制台中显示服务器的响应(如果有)。要打开控制台,请按F12并选择控制台选项卡。
请注意,只有在服务器发送的xml格式正确的情况下,才会填充responseXML
属性。 JS中的Xml解析有点挑剔,因此您可能希望依赖responseText
作为后备。