Ezserver
Author: s | 2025-04-24
Guide and showcase for EZServer - Part 9 - Tier 10, Sunderock Springs Guide and showcase for EZServer - Part 10 - Optional tier, Sleeper's Tomb Guide and showcase for EZServer - Part 11 - Veeshan's Peak EZServer - Halloween Event, Hills of Shade Trailer EZServer - Rallos Zek Event EZServer - Veeshans Peak - Tunare Shared Quest
Ezserver - Ezserver Windows 4.2
0.00 0 reviews 1+ Downloads $2.99 Ezserver Player is a blockchain Player that plays channels movies and series. About Ezserver Player Ezserver Player is a video players & editors app developedby Ezhometech Inc.. The APK has been available since September 2024. In the last 30 days, the app was downloaded about 0 times. It's currently not in the top ranks. The app has no ratings yet. The last update of the app was on October 13, 2024. Ezserver Player has a content rating "Everyone". Ezserver Player has an APK download size of 49.89 MB and the latest version available is 3.1.204. Ezserver Player costs $2.99 to download. Description Ezserver Player is a blockchain Player that plays channels movies and series from Decentralized Ezserver on Mobile and Smart TV Features:TV, Movie, Series and EPGSupport Multicast AES Encrypted ChannelsSupport OTT AES Encrypted ChannelsChannel Video Format: MPEG2/H264 Transport StreamChannel Audio Format: MP3/AAC, ADTS StreamMovie Format: MP4, MKVSupport TMDB for Movie and SeriesRecent changes:Fixed App background closed bug">Show more More data about Ezserver Player Price $2.99 Total downloads 3 Recent downloads 0 Rating No ratings Ranking Not ranked Version 3.1.204 APK size 49.9 MB Number of libraries ? Suitable for Everyone Ads NO ads Alternatives for the Ezserver Player app Ezserver Player compared with similar apps Keywords missing from this app Iptv Video Content Live App Watch Media Streaming Play Playlists Supports Features Playlist Audio Epg Experience Favorite Application Shows Xtream Add Enjoy Smart Users Service Google Change Mode Provider Provide Videos Online Access
vaniusha3/ezserver: Ezserver 12 - GitHub
4. 保存上传记录await client.mutation({ name: "insert_upload_log", args: { object: { file_name: imageResult.fileName, file_url: imageResult.downloadUrl, file_size: imageResult.fileSize, file_type: "image" } }});2.2.4 高级用法// 1. 使用变量const result = await client.query({ name: "user", args: { where: { id: { _eq: () => "$id" } // 使用函数声明变量 } }, opArgs: { $id: "Int!" // 定义变量类型 }, variables: { id: 1 // 传入变量值 }, fields: ["id", "name"]});// 2. 使用指令const result = await client.query({ name: "user", directives: [ { name: "include", args: { if: true } } ], fields: ["id", "name"]});// 3. 事务处理const result = await client.operate({ opMethod: "mutation", opFields: [ { name: "update_user", args: { where: { id: { _eq: 1 } }, _set: { balance: 0 } } }, { name: "insert_transaction", args: { object: { user_id: 1, amount: -100, type: "withdraw" } } } ]});// 4. 自定义GraphQL查询const result = await client.runGql({ gql: ` query getUser($id: Int!) { user_by_pk(id: $id) { id name orders_aggregate { aggregate { count sum { amount } } } } } `, variables: { id: 1 }});3. EzServer 使用3.1 接口定义interface EzServerConfig extends EzClientConfig { af_id: string; // ezcloud框架ID clientinfo?: Recordstring, any>; // 客户端信息}class EzServer extends EzClient { // 配置相关 setClientinfo(clientinfo: Recordstring, any>, isOverride?: boolean): void; getClientinfo(): Recordstring, any>; // 云函数调用 callScf(input: { scf_dir?: string; scf_name: string; payload?: any; }): Promise{ code: number; msg: string; data: any; }>; // 开发相关 developerLogin(input: { username: string; password: string; }): Promise{ username: string; developer_token: string; expires_in: number; }>; pushScf(input: { scf_dir: string; isOverwrite?: boolean; scfs: Array{ scf_name: string; scf_code: string; parameters?: Recordstring, any>; returns?: Recordstring, any>; description?: string; }>; }): Promiseany>; // 其他接口 fetchApi(input: { url: string; method?: string; data?: any; headers?: Recordstring, any>; }): Promiseany>; runActionflowCode(input: { jsCode: string; args?: any; updateDb?: boolean; }): Promiseany>; callActionflow(input: { actionFlowId: string; versionId?: number; args?: any; }): Promiseany>;}3.2 EzServer 使用案例3.2.1 基础云函数调用// 1. 初始化服务端实例const server = new EzServer({[EzServer] EzServer Installation Guide - YouTube
. Guide and showcase for EZServer - Part 9 - Tier 10, Sunderock Springs Guide and showcase for EZServer - Part 10 - Optional tier, Sleeper's Tomb Guide and showcase for EZServer - Part 11 - Veeshan's Peak EZServer - Halloween Event, Hills of Shade Trailer EZServer - Rallos Zek Event EZServer - Veeshans Peak - Tunare Shared QuestEZServer/install.sh at master MasAries/EZServer - GitHub
2.2.8 • Public • Published a month ago ReadmeCode Beta2 Dependencies2 Dependents42 Versionsezcloudbase 客户端使用文档ezcloudbase 是一个基于函子后端的云开发框架,提供了完整的云开发接口。它提供了两种使用方式:EzClient - 直接操作数据库,适用于:需要直接操作数据库的场景简单的CRUD操作文件上传等基础功能EzServer - 调用云函数,适用于:需要复杂业务逻辑的场景需要权限控制的场景需要调用第三方服务的场景1. 快速开始1.1 安装1.2 使用 EzClientimport { EzClient } from 'ezcloudbase';// 1. 创建客户端实例const client = new EzClient({ endpoint_url: " 2. 查询数据async function getUsers() { const users = await client.query({ name: "user", fields: ["id", "name", "age"] }); console.log(users);}// 3. 新增数据async function createUser() { const user = await client.mutation({ name: "insert_user_one", args: { object: { name: "张三", age: 20 } }, fields: ["id", "name"] }); console.log(user);}// 4. 文件上传async function uploadImage(file: File) { const result = await client.uploadImage(file, { onReady: (info) => { console.log("准备上传:", info); } }); console.log("下载地址:", result.downloadUrl);}1.3 使用 EzServerimport { EzServer } from 'ezcloudbase';// 1. 创建服务端实例const server = new EzServer({ endpoint_url: " af_id: "your-action-flow-id" // ezcloud框架ID});// 2. 设置客户端信息server.setClientinfo({ user_id: 1, token: "xxx"});// 3. 调用云函数async function getUserInfo(userId: number) { const result = await server.callScf({ scf_name: "getUserInfo", payload: { userId } }); if (result.code === 0) { console.log(result.data); } else { console.error(result.msg); }}// 4. 开发环境 - 上传云函数async function deployFunction() { const result = await server.pushScf({ scf_dir: "/user", scfs: [{ scf_name: "getUserInfo", scf_code: ` const userId = ezcloud.getPayload().userId; const user = ezcloud.queryGetFirstOne({ name: "user", args: { where: { id: { _eq: userId } } }, fields: ["id", "name", "age"] }); ezcloud.success(user); `, description: "获取用户信息" }] }); console.log(result);}2. EzClient 使用2.1 接口定义interface EzClientConfig { endpoint_url: string; // GraphQL端点URL headers?: Recordstring, any>; // 请求头}class EzClient { // 配置相关 setConfig(config: EzClientConfig, isOverride?: boolean): void; getConfig(): { endpoint_url: string; headers: Recordstring, any>; project_id: string; project_type: string; }; setHeaders(headers: Recordstring, any>, isOverride?: boolean): void; getHeaders(): Recordstring, any>; // 数据操作 runGql(input: RunGqlInput): Promiseany>; operate(input: OperateInput): PromiseOperateResult>; query(input: QueryInput): Promiseany>; find(input: FindInput): PromiseFindResult>; mutation(input: MutationInput): Promiseany>; queryGetFirstOne(input: QueryGetFirstOne): Promiseany>; mutationGetFirstOne(input: MutationGetFirstOne): Promiseany>; // 文件上传 uploadImage(file: FileInput, options?: UploadInput): PromiseUploadResult>; uploadFile(file: FileInput, options?: UploadInput): PromiseUploadResult>; uploadVideo(file: FileInput, options?: UploadInput): PromiseUploadResult>;}2.2 EzClient 使用案例2.2.1 基础查询操作// 1. 简单查询const usersDownload Ezserver Player APK Free - Latest Ezserver
Constructor() { this.server = new EzServer({ endpoint_url: " af_id: "your-action-flow-id" }); } // 设置用户认证信息 setAuth(token: string, userId: number) { this.server.setClientinfo({ token, user_id: userId }); } // 创建订单 async createOrder(productId: number, quantity: number) { const result = await this.server.callScf({ scf_dir: "/order/", scf_name: "create", payload: { product_id: productId, quantity } }); if (result.code === 0) { return result.data; } throw new Error(result.msg); } // 支付订单 async payOrder(orderId: string, paymentMethod: string) { const result = await this.server.callScf({ scf_dir: "/order/", scf_name: "pay", payload: { order_id: orderId, payment_method: paymentMethod } }); if (result.code === 0) { return result.data; } throw new Error(result.msg); }}// 使用示例const orderService = new OrderService();// 设置认证信息orderService.setAuth("user-token", 1);// 创建并支付订单async function purchaseProduct(productId: number, quantity: number) { // 1. 创建订单 const order = await orderService.createOrder(productId, quantity); // 2. 支付订单 const payment = await orderService.payOrder(order.id, "wechat"); return payment;}4. ezcloud 行为流框架ezcloud 是函子(原Zion)项目中的行为流框架,用于处理云函数的执行。EzServer 的所有云函数调用都是通过 ezcloud 行为流来处理的。4.1 行为流配置流程登录函子平台,创建新的行为流行为流名称设置为 "ezcloud"配置入参节点:{ scf_dir: string; // 云函数目录 scf_name: string; // 云函数名称 payload: JSONB; // 函数参数 clientinfo: JSONB; // 客户端信息,JSONB类型}配置出参节点:{ code: Integer; // 返回码,0表示成功 msg: string; // 返回信息 data: JSONB; // 返回数据}添加代码块节点,将 dist/ezcloud.umd.js 的内容复制到代码块中配置数据模型:-- 系统配置表CREATE TABLE ez_system ( id INT PRIMARY KEY, idx INT, -- 排序,最大值为默认配置 name STRING, -- 系统名称 is_logs BOOLEAN, -- 是否启用日志 is_developer_auth BOOLEAN, -- 是否启用开发者鉴权 pre_middelware_code TEXT, -- 前置中间件代码 post_middelware_code TEXT, -- 后置中间件代码 global_config JSONB, -- 全局配置 af_id STRING, -- 行为流ID thirdapi_id STRING -- 第三方API配置ID);-- 云函数表CREATE TABLE ez_scf ( id INT PRIMARY KEY, scf_dir STRING, -- 云函数目录 scf_name STRING, -- 云函数名称 description TEXT, -- 功能描述 scf_code TEXT, -- 云函数代码 parameters JSONB, -- 入参定义 returns JSONB -- 返回值定义);-- 日志表CREATE TABLE ez_logs ( id INT PRIMARY KEY, ez_logs_parent_ez_logs INT, -- 父日志ID scf_dir STRING, -- 云函数目录 scf_name STRING, -- 云函数名称 payload JSONB, -- 入参 clientinfo JSONB, -- 客户端信息 code INT, -- 状态码 msg STRING, -- 提示信息 data JSONB, -- 返回数据 errors JSONB -- 错误记录);-- 开发者表CREATE TABLE ez_developer ( id INT PRIMARY KEY, username STRING,Free ezserver 2.0 Download - ezserver 2.0 for Windows
. Guide and showcase for EZServer - Part 9 - Tier 10, Sunderock Springs Guide and showcase for EZServer - Part 10 - Optional tier, Sleeper's Tomb Guide and showcase for EZServer - Part 11 - Veeshan's Peak EZServer - Halloween Event, Hills of Shade Trailer EZServer - Rallos Zek Event EZServer - Veeshans Peak - Tunare Shared QuestComments
0.00 0 reviews 1+ Downloads $2.99 Ezserver Player is a blockchain Player that plays channels movies and series. About Ezserver Player Ezserver Player is a video players & editors app developedby Ezhometech Inc.. The APK has been available since September 2024. In the last 30 days, the app was downloaded about 0 times. It's currently not in the top ranks. The app has no ratings yet. The last update of the app was on October 13, 2024. Ezserver Player has a content rating "Everyone". Ezserver Player has an APK download size of 49.89 MB and the latest version available is 3.1.204. Ezserver Player costs $2.99 to download. Description Ezserver Player is a blockchain Player that plays channels movies and series from Decentralized Ezserver on Mobile and Smart TV Features:TV, Movie, Series and EPGSupport Multicast AES Encrypted ChannelsSupport OTT AES Encrypted ChannelsChannel Video Format: MPEG2/H264 Transport StreamChannel Audio Format: MP3/AAC, ADTS StreamMovie Format: MP4, MKVSupport TMDB for Movie and SeriesRecent changes:Fixed App background closed bug">Show more More data about Ezserver Player Price $2.99 Total downloads 3 Recent downloads 0 Rating No ratings Ranking Not ranked Version 3.1.204 APK size 49.9 MB Number of libraries ? Suitable for Everyone Ads NO ads Alternatives for the Ezserver Player app Ezserver Player compared with similar apps Keywords missing from this app Iptv Video Content Live App Watch Media Streaming Play Playlists Supports Features Playlist Audio Epg Experience Favorite Application Shows Xtream Add Enjoy Smart Users Service Google Change Mode Provider Provide Videos Online Access
2025-03-284. 保存上传记录await client.mutation({ name: "insert_upload_log", args: { object: { file_name: imageResult.fileName, file_url: imageResult.downloadUrl, file_size: imageResult.fileSize, file_type: "image" } }});2.2.4 高级用法// 1. 使用变量const result = await client.query({ name: "user", args: { where: { id: { _eq: () => "$id" } // 使用函数声明变量 } }, opArgs: { $id: "Int!" // 定义变量类型 }, variables: { id: 1 // 传入变量值 }, fields: ["id", "name"]});// 2. 使用指令const result = await client.query({ name: "user", directives: [ { name: "include", args: { if: true } } ], fields: ["id", "name"]});// 3. 事务处理const result = await client.operate({ opMethod: "mutation", opFields: [ { name: "update_user", args: { where: { id: { _eq: 1 } }, _set: { balance: 0 } } }, { name: "insert_transaction", args: { object: { user_id: 1, amount: -100, type: "withdraw" } } } ]});// 4. 自定义GraphQL查询const result = await client.runGql({ gql: ` query getUser($id: Int!) { user_by_pk(id: $id) { id name orders_aggregate { aggregate { count sum { amount } } } } } `, variables: { id: 1 }});3. EzServer 使用3.1 接口定义interface EzServerConfig extends EzClientConfig { af_id: string; // ezcloud框架ID clientinfo?: Recordstring, any>; // 客户端信息}class EzServer extends EzClient { // 配置相关 setClientinfo(clientinfo: Recordstring, any>, isOverride?: boolean): void; getClientinfo(): Recordstring, any>; // 云函数调用 callScf(input: { scf_dir?: string; scf_name: string; payload?: any; }): Promise{ code: number; msg: string; data: any; }>; // 开发相关 developerLogin(input: { username: string; password: string; }): Promise{ username: string; developer_token: string; expires_in: number; }>; pushScf(input: { scf_dir: string; isOverwrite?: boolean; scfs: Array{ scf_name: string; scf_code: string; parameters?: Recordstring, any>; returns?: Recordstring, any>; description?: string; }>; }): Promiseany>; // 其他接口 fetchApi(input: { url: string; method?: string; data?: any; headers?: Recordstring, any>; }): Promiseany>; runActionflowCode(input: { jsCode: string; args?: any; updateDb?: boolean; }): Promiseany>; callActionflow(input: { actionFlowId: string; versionId?: number; args?: any; }): Promiseany>;}3.2 EzServer 使用案例3.2.1 基础云函数调用// 1. 初始化服务端实例const server = new EzServer({
2025-04-092.2.8 • Public • Published a month ago ReadmeCode Beta2 Dependencies2 Dependents42 Versionsezcloudbase 客户端使用文档ezcloudbase 是一个基于函子后端的云开发框架,提供了完整的云开发接口。它提供了两种使用方式:EzClient - 直接操作数据库,适用于:需要直接操作数据库的场景简单的CRUD操作文件上传等基础功能EzServer - 调用云函数,适用于:需要复杂业务逻辑的场景需要权限控制的场景需要调用第三方服务的场景1. 快速开始1.1 安装1.2 使用 EzClientimport { EzClient } from 'ezcloudbase';// 1. 创建客户端实例const client = new EzClient({ endpoint_url: " 2. 查询数据async function getUsers() { const users = await client.query({ name: "user", fields: ["id", "name", "age"] }); console.log(users);}// 3. 新增数据async function createUser() { const user = await client.mutation({ name: "insert_user_one", args: { object: { name: "张三", age: 20 } }, fields: ["id", "name"] }); console.log(user);}// 4. 文件上传async function uploadImage(file: File) { const result = await client.uploadImage(file, { onReady: (info) => { console.log("准备上传:", info); } }); console.log("下载地址:", result.downloadUrl);}1.3 使用 EzServerimport { EzServer } from 'ezcloudbase';// 1. 创建服务端实例const server = new EzServer({ endpoint_url: " af_id: "your-action-flow-id" // ezcloud框架ID});// 2. 设置客户端信息server.setClientinfo({ user_id: 1, token: "xxx"});// 3. 调用云函数async function getUserInfo(userId: number) { const result = await server.callScf({ scf_name: "getUserInfo", payload: { userId } }); if (result.code === 0) { console.log(result.data); } else { console.error(result.msg); }}// 4. 开发环境 - 上传云函数async function deployFunction() { const result = await server.pushScf({ scf_dir: "/user", scfs: [{ scf_name: "getUserInfo", scf_code: ` const userId = ezcloud.getPayload().userId; const user = ezcloud.queryGetFirstOne({ name: "user", args: { where: { id: { _eq: userId } } }, fields: ["id", "name", "age"] }); ezcloud.success(user); `, description: "获取用户信息" }] }); console.log(result);}2. EzClient 使用2.1 接口定义interface EzClientConfig { endpoint_url: string; // GraphQL端点URL headers?: Recordstring, any>; // 请求头}class EzClient { // 配置相关 setConfig(config: EzClientConfig, isOverride?: boolean): void; getConfig(): { endpoint_url: string; headers: Recordstring, any>; project_id: string; project_type: string; }; setHeaders(headers: Recordstring, any>, isOverride?: boolean): void; getHeaders(): Recordstring, any>; // 数据操作 runGql(input: RunGqlInput): Promiseany>; operate(input: OperateInput): PromiseOperateResult>; query(input: QueryInput): Promiseany>; find(input: FindInput): PromiseFindResult>; mutation(input: MutationInput): Promiseany>; queryGetFirstOne(input: QueryGetFirstOne): Promiseany>; mutationGetFirstOne(input: MutationGetFirstOne): Promiseany>; // 文件上传 uploadImage(file: FileInput, options?: UploadInput): PromiseUploadResult>; uploadFile(file: FileInput, options?: UploadInput): PromiseUploadResult>; uploadVideo(file: FileInput, options?: UploadInput): PromiseUploadResult>;}2.2 EzClient 使用案例2.2.1 基础查询操作// 1. 简单查询const users
2025-03-27Constructor() { this.server = new EzServer({ endpoint_url: " af_id: "your-action-flow-id" }); } // 设置用户认证信息 setAuth(token: string, userId: number) { this.server.setClientinfo({ token, user_id: userId }); } // 创建订单 async createOrder(productId: number, quantity: number) { const result = await this.server.callScf({ scf_dir: "/order/", scf_name: "create", payload: { product_id: productId, quantity } }); if (result.code === 0) { return result.data; } throw new Error(result.msg); } // 支付订单 async payOrder(orderId: string, paymentMethod: string) { const result = await this.server.callScf({ scf_dir: "/order/", scf_name: "pay", payload: { order_id: orderId, payment_method: paymentMethod } }); if (result.code === 0) { return result.data; } throw new Error(result.msg); }}// 使用示例const orderService = new OrderService();// 设置认证信息orderService.setAuth("user-token", 1);// 创建并支付订单async function purchaseProduct(productId: number, quantity: number) { // 1. 创建订单 const order = await orderService.createOrder(productId, quantity); // 2. 支付订单 const payment = await orderService.payOrder(order.id, "wechat"); return payment;}4. ezcloud 行为流框架ezcloud 是函子(原Zion)项目中的行为流框架,用于处理云函数的执行。EzServer 的所有云函数调用都是通过 ezcloud 行为流来处理的。4.1 行为流配置流程登录函子平台,创建新的行为流行为流名称设置为 "ezcloud"配置入参节点:{ scf_dir: string; // 云函数目录 scf_name: string; // 云函数名称 payload: JSONB; // 函数参数 clientinfo: JSONB; // 客户端信息,JSONB类型}配置出参节点:{ code: Integer; // 返回码,0表示成功 msg: string; // 返回信息 data: JSONB; // 返回数据}添加代码块节点,将 dist/ezcloud.umd.js 的内容复制到代码块中配置数据模型:-- 系统配置表CREATE TABLE ez_system ( id INT PRIMARY KEY, idx INT, -- 排序,最大值为默认配置 name STRING, -- 系统名称 is_logs BOOLEAN, -- 是否启用日志 is_developer_auth BOOLEAN, -- 是否启用开发者鉴权 pre_middelware_code TEXT, -- 前置中间件代码 post_middelware_code TEXT, -- 后置中间件代码 global_config JSONB, -- 全局配置 af_id STRING, -- 行为流ID thirdapi_id STRING -- 第三方API配置ID);-- 云函数表CREATE TABLE ez_scf ( id INT PRIMARY KEY, scf_dir STRING, -- 云函数目录 scf_name STRING, -- 云函数名称 description TEXT, -- 功能描述 scf_code TEXT, -- 云函数代码 parameters JSONB, -- 入参定义 returns JSONB -- 返回值定义);-- 日志表CREATE TABLE ez_logs ( id INT PRIMARY KEY, ez_logs_parent_ez_logs INT, -- 父日志ID scf_dir STRING, -- 云函数目录 scf_name STRING, -- 云函数名称 payload JSONB, -- 入参 clientinfo JSONB, -- 客户端信息 code INT, -- 状态码 msg STRING, -- 提示信息 data JSONB, -- 返回数据 errors JSONB -- 错误记录);-- 开发者表CREATE TABLE ez_developer ( id INT PRIMARY KEY, username STRING,
2025-04-17Endpoint_url: " af_id: "your-action-flow-id"});// 2. 设置客户端信息(如token)server.setClientinfo({ user_id: 1, token: "your-jwt-token"});// 3. 调用根目录云函数const result = await server.callScf({ scf_dir: "/", // 根目录使用单斜线 scf_name: "getSystemInfo", payload: { type: "basic" }});// 4. 调用子目录云函数const userResult = await server.callScf({ scf_dir: "/user/", // 子目录使用两个斜线 scf_name: "getProfile", payload: { fields: ["basic", "extra"] }});// 5. 错误处理try { const result = await server.callScf({ scf_dir: "/order/", scf_name: "create", payload: { product_id: 1, quantity: 2 } }); if (result.code === 0) { return result.data; } else { throw new Error(result.msg); }} catch (error) { console.error("调用失败:", error);}3.2.2 用户认证示例// 登录流程async function login(username: string, password: string) { const result = await server.callScf({ scf_dir: "/auth/", scf_name: "login", payload: { username, password } }); if (result.code === 0) { // 登录成功后设置token等信息 server.setClientinfo({ user_id: result.data.user_id, token: result.data.token, role: result.data.role }); return result.data; } throw new Error(result.msg);}// 退出登录async function logout() { const result = await server.callScf({ scf_dir: "/auth/", scf_name: "logout" }); if (result.code === 0) { // 清除客户端信息 server.setClientinfo({}, true); } return result;}3.2.3 开发环境使用// 1. 开发者登录const loginResult = await server.developerLogin({ username: "admin", password: "123456"});// 登录成功后自动设置了developer_tokenconsole.log("Token过期时间:", loginResult.expires_in);// 2. 上传云函数const pushResult = await server.pushScf({ scf_dir: "/user/", // 注意目录格式 isOverwrite: true, scfs: [ { scf_name: "getProfile", scf_code: ` const { user_id } = ezcloud.getClientinfo(); const user = ezcloud.queryGetFirstOne({ name: "user", args: { where: { id: { _eq: user_id } } }, fields: ["id", "name", "age", "avatar"] }); if (!user) { ezcloud.fail("用户不存在"); } ezcloud.success(user); `, parameters: { type: "object", properties: {} // 从clientinfo获取user_id,无需参数 }, returns: { type: "object", properties: { id: { type: "number" }, name: { type: "string" }, age: { type: "number" }, avatar: { type: "string" } } }, description: "获取当前用户信息" } ]});// 3. 拉取云函数const pullResult = await server.pullScf({ scf_dir: "/user/", scfs: [ { scf_name: "getProfile" } ]});// 4. 删除云函数const removeResult = await server.removeScf({ scf_dir: "/user/", scfs: [ { scf_name: "deprecatedFunction" } ]});3.2.4 完整业务示例// 订单创建流程class OrderService { private server: EzServer;
2025-04-07