【英雄联盟API调用】系统用户权限排坑求助文,悬15RMB,可以解决就私我(部分问题已解决)
2023-12-14 11:36:14
node
- 查找LOL客户端(归为坑类)
- node 编译查找个人信息接口的脚本
- ------------------------------------------未解决------------------------------------------------
- ? Nodejs(node脚本启动坑点)
- ---------------------------------------------------------------------------------------------------
- ------------------------------------------已解决------------------------------------------------
- ? 当你尝试了很多次,被权限问题困扰,这时你准备重新开一个Admin权限的系统用户时...`(环境问题已解决,若有此主标题内其它问题欢迎咨询)`
- ---------------------------------------------------------------------------------------------------
- 等待排坑补文
- LOL 拳头 API
查找LOL客户端(归为坑类)
wmic PROCESS WHERE name='LeagueClientUx.exe' GET commandline
当你输入这一行指令时,且你的
LOL
客户端在线时,如果你的CMD
此时是管理员权限,则会出现以下内容
CommandLine
// 以下为Admin状态下的CMD显示内容
{
数据...
}
当你输入这一行指令时,且你的
LOL
客户端在线时,如果你的CMD
此时不是管理员权限,则会出现以下内容
CommandLine
// 以下为非Admin状态下的CMD显示内容(不会出数据)
node 编译查找个人信息接口的脚本
process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';
let all = null;
const { exec } = require('child_process');
const https = require('https');
const findLeagueClientCommandLine = async () => {
return new Promise((resolve, reject) => {
exec('"C:\\Windows\\System32\\wbem\\wmic" PROCESS WHERE "name=\'LeagueClientUx.exe\'" GET commandline', (err, stdout) => {
if (err) {
reject(err);
} else {
all = stdout;
resolve(stdout);
}
});
});
};
const getRiotData = async (url) => {
const token = all.match(/remoting-auth-token=(.*?)["'\s]/)[1]
const port = all.match(/--app-port=(.*?)["'\s]/)[1]
const auth = Buffer.from(`riot:${token}`).toString('base64');
const headers = {
'Accept': 'application/json',
'Content-Type': 'application/json',
'Authorization': `Basic ${auth}`
};
const options = {
hostname: '127.0.0.1',
port: port,
path: url,
method: 'GET',
headers: headers
};
return new Promise((resolve, reject) => {
const req = https.request(options, (res) => {
let data = '';
res.on('data', (chunk) => {
data += chunk;
});
res.on('end', () => {
resolve(data);
});
});
req.on('error', (error) => {
reject(error);
});
req.end();
});
};
const main = async () => {
try {
const leagueClientCommandline = await findLeagueClientCommandLine();
console.log('LeagueClientUx.exe 命令行参数:', leagueClientCommandline);
const currentUser = await getRiotData('/lol-summoner/v1/current-summoner');
console.log('感谢使用本程序, 当前获取到的用户数据:', currentUser);
} catch (error) {
console.error('发生错误:', error);
}
};
main();
------------------------------------------未解决------------------------------------------------
? Nodejs(node脚本启动坑点)
1. 你的node启动是本机无管理员权限的 cmd命令提示符
这个权限问题我在尝试解决,真的不好解决,或者不知道如何解决 = =!
---------------------------------------------------------------------------------------------------
------------------------------------------已解决------------------------------------------------
? 当你尝试了很多次,被权限问题困扰,这时你准备重新开一个Admin权限的系统用户时…(环境问题已解决,若有此主标题内其它问题欢迎咨询)
假设你已经成功开通了一个拥有Admin权限的账户,这时候打开的
cmd
也是具有管理员权限的终端命令提示符
然而可能新的问题出现了...
1. 你的系统环境因为切换用户被重置了, 此时你可以使用 yran 下载项目, 但是当你使用 yarn start 启动项目时,此时开始报错…
报错信息(已解决 => 环境问题)
PS C:\Users\ASUS\Desktop\L> yarn start
yarn run v1.22.17
warning ..\..\package.json: No license field
$ concurrently "react-app-rewired start" "start node get-lol-data.js"
[0] Error occurred when executing command: react-app-rewired start
[0] Error: spawn cmd.exe ENOENT
[0] at ChildProcess._handle.onexit (node:internal/child_process:284:19)
[0] at onErrorNT (node:internal/child_process:477:16)
[0] at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
[1] Error occurred when executing command: start node get-lol-data.js
[1] Error: spawn cmd.exe ENOENT
[1] at ChildProcess._handle.onexit (node:internal/child_process:284:19)
[1] at onErrorNT (node:internal/child_process:477:16)
[1] at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
[1] start node get-lol-data.js exited with code -4058
[0] react-app-rewired start exited with code -4058
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
这个报错应该是牵扯到环境变量问题。。。(已解决 => 环境问题)
我至少能保证项目是没问题的,因为我在老系统用户
(ASUS)
中能够顺利启动此项目,只不过我ASUS 用户
CMD` 是没有管理员权限的
新
Admin
账户现在只有一个NODE_PATH
不知道是不是少装了什么,导致项目启动不起来…
问题解决方案
报错: Error: spawn cmd.exe ENOENT
在
Windows系统
中,cmd.exe
是命令提示符窗口的可执行文件,如果出现Error: spawn cmd.exe ENOENT
的错误,可能是因为系统无法找到cmd.exe
文件
添加环境变量
添加系统环境变量
%SystemRoot%\system32
此时关闭旧的cmd终端
重新打开 输入yarn start
完美运行,游戏数据显示
---------------------------------------------------------------------------------------------------
等待排坑补文
第一个用户权限问题未解决
未解决…
第二个环境问题已解决
当你的主账户无法获取管理员 cmd 时,你选择登录一个拥有完全控制权的
Admin
账户,此时环境被重置,你需要了解Nodejs 安装和环境配置
,配置好后,再去系统环境变量中修改Path
添加一个新的变量为%SystemRoot%\system32
此时你再去运行项目,就可以读取到 LOL
客户端数据以及玩家数据了
LOL 拳头 API
文章来源:https://blog.csdn.net/Dongfang_project/article/details/134989027
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!