[go: nahoru, domu]

Skip to content

ACFUN-FOSS/acfunlive-backend-js

Repository files navigation

acfunlive-backendjavascriptrescript接口,支持Web APINodeTauri

Web API(浏览器)

import webApiSession from 'acfunlive-backend-js/webapi.js';

const session = webApiSession();

session.connect();
session.on("websocketOpen", () => login());
session.on("heartbeat", () => console.log("heartbeat"));

async function login() {
    await session.asyncRequest("login", { account: "", password: "" });
    const liveList = await session.asyncRequest("getAllLiveList");
    const liverUID = liveList.data[0].profile.userID;
    session.on("comment", (c) => console.log("comment: ", c.data), liverUID);
    await session.asyncRequest("getDanmaku", { liverUID });
}

Node

需要另外安装依赖ws

import nodeSession from 'acfunlive-backend-js/node.js';

const session = nodeSession();

session.connect();
session.on("websocketOpen", () => login());
session.on("heartbeat", () => console.log("heartbeat"));

async function login() {
    await session.asyncRequest("login", { account: "", password: "" });
    const liveList = await session.asyncRequest("getAllLiveList");
    const liverUID = liveList.data[0].profile.userID;
    session.on("comment", (c) => console.log("comment: ", c.data), liverUID);
    await session.asyncRequest("getDanmaku", { liverUID });
}

Tauri

需要另外安装依赖tauri-plugin-websocket,注意是要安装ac-live-fix分支

Tauri那里需要安装依赖plugins-workspace,注意是要安装ac-live-fix分支

yarn add https://github.com/orzogc/tauri-plugin-websocket#ac-live-fix
import tauriSession from 'acfunlive-backend-js/tauri.js';

const session = tauriSession();

session.connect();
session.on("websocketOpen", () => login());
session.on("heartbeat", () => console.log("heartbeat"));

async function login() {
    await session.asyncRequest("login", { account: "", password: "" });
    const liveList = await session.asyncRequest("getAllLiveList");
    const liverUID = liveList.data[0].profile.userID;
    session.on("comment", (c) => console.log("comment: ", c.data), liverUID);
    await session.asyncRequest("getDanmaku", { liverUID });
}