UnblockNeteaseMusic/server-rust 的 N-API binding

目前使用者文件及開發文件 仍在撰寫,在此之前有任何問題,歡迎開 Discussion 詢問。
使用
您可以直接從 https://www.npmjs.com 引用 @unblockneteasemusic/rust-napi 函式庫。
這個函式庫會協助您取回符合系統架構的套件。
就如〈架構〉所說,rust-napi 函式庫的引擎和類型定義,現階段內建在函式庫,
因此可以省去註冊引擎的步驟。但與舊版 JS 不同,UNM 輸往 console 的 logging 需手動開啟:
const UNM = require("@unblockneteasemusic/rust-napi");
UNM.enableLogging(UNM.LoggingType.ConsoleEnv);
然後我們可以建立一個 executor 實體,並定義想要的 context:
const executor = new UNM.Executor();
const ctx = {};
接下來的使用方式與 Rust 函式庫相似:
const searchResult = await executor.search(
[UNM.Engine.Bilibili, UNM.Engine.Kuwo, UNM.Engine.YtDl]
{
id: "12345",
name: "青花瓷",
artists: [
{
id: "114514",
name: "周杰伦",
},
],
},
ctx
);
const retrieveResult = await executor.retrieve(searchResult, ctx);
授權條款
This project is licensed under LGPL-3.0-only.
