跳到主要内容

webgm_utils

简介

提供webgm操作相关的工具库

组件接口

FCache.gs

函数原型函数作用
bool init_all(mixed datas)初始化数据
bool drop_all()清空数据
map load_all()获取所有数据
bool save(string key, mixed data)存储数据
bool save_once(string key, mixed data)存储唯一数据,不允许覆盖
bool save_batch(map key2data)存储一批数据
bool update(string key, mixed data)更新数据(增量更新)
bool exist(string key)是否存在该数据
mixed load(string key, string path = "")加载数据
bool drop(string key)卸载数据
bool drop_batch(array key_list)卸载一批数据

FCoEntryCycle.gs

创建协程(循环处理),仅作为组件使用。

函数原型函数作用
bool start_co_entry_cycle(function func, float wait_time = 3, float delay_time = 1)开启协程(循环处理)
void stop_co_entry_cycle()关闭协程

FCoEntryQueue.gs

创建协程(有消息才会触发函数调用),仅作为组件使用。

函数原型函数作用
bool start_co_entry_queue(function func, int timeout = 5)开启协程(队列处理)
void stop_co_entry_queue()关闭协程
bool send_co_data(mixed data)发送数据

FWebgmConf.gs

webgm的配置加载

函数原型函数作用
void load_configs(mixed config_or_file = nil, bool overwrite = true, string module = "Config")
void load_configs_by_dir(mixed dir, bool overwrite = true)通过文件夹加载配置
void set_configs(map config, bool overwrite = true)更新配置
void set_config(string path, mixed val, bool overwrite = true)设置指定path配置
mixed get_config(string path = "")获取基础配置
mixed get_http_config(string path = "")获取HTTP配置

FWebgmDebug.gs

webgm的调试设置

函数原型函数作用
void enable_debug()开启调试
void disable_debug()关闭调试
bool is_enable_debug()是否开启调试
void TRACE_WEBGM(string format, ...)日志打印
void WARN_OBSOLETE_FUNCTION(string old_name, string new_name)日志打印,提示接口过时

FWebgmFuncs.gs

webgm的实用函数

函数原型函数作用
string gen_std_ctime(mixed time_sec)获取标准时间ctime
string gen_num_ctime(mixed time_sec)获取数字时间ctime
string gen_mem_info(mixed mem_size)生成内存信息
string gen_pure_name(mixed filepath_or_object)获取不带路径和扩展名的纯文件名
array get_listen_ports()获取所有监听端口列表
map get_listen_port2cos()获取所有监听端口及其协程
buffer read_all_data(string file_path)读取所有文件数据

FWebgmHotfix.gs

webgm的热更修复

函数原型函数作用
bool update_handler(string file_name)模拟GS中的update操作
string hotfix_handler(string file_path, mixed file_content, function success_callback)执行热更操作

FWebgmMenus.gs

webgm的菜单管理

函数原型函数作用
void refresh_menu(int level = 1, map menu2info = nil)刷新当前菜单
map get_menus()获取菜单配置
bool append_internal_menu_dirs(mixed dir_or_dirs, bool on_tail = true)增加内部菜单列表
bool remove_internal_menu_dirs(mixed dir_or_dirs)移除内部菜单列表

FWebgmPost.gs

webgm的请求发送

函数原型函数作用
map post(string url, mixed data = nil, int type = "ContentTypePost.json", map headers = , map extra = )发送post请求(规范返回值)
map cmd_post(mixed host, mixed port, mixed cmd, mixed data = nil, int type = "ContentTypePost.json", map headers = , map extra = )发送post请求(规范返回值)-消息号

FWebgmProxy.gs

webgm的服务代理

函数原型函数作用
void add_filter(object ob, bool head_insert = true)注册filter
void add_handler(string url, function func)注册handler
void add_handler_forward_func(function func)添加前置处理函数
void add_handler_backward_func(function func)添加后置处理函数
void register_all_handlers(string dir, string prefix = "/")将指定文件夹下的文件注册成handler
void register_all_filters(string dir, bool head_insert = true)将指定文件夹下的文件注册成filters

FWebgmResp.gs

webgm的回包处理

函数原型函数作用
void send_response_success(object res, mixed data = "", bool is_table = false)发送操作成功的回包
void send_response_failure(object res, mixed data = "", bool is_table = false)发送操作失败的回包
void send_response_illegal(object res, mixed data = "", bool is_table = false)发送请求参数不合法/缺失的回包
void send_response_unauthorized(object res, mixed data = "", bool is_table = false)发送未认证的回包
void send_response_forbidden(object res, mixed data = "", bool is_table = false)发送没有权限的回包
void send_response_props(object res, map props = )通知控件更新props的指定字段值
void send_response_table(object res, mixed data, bool auto_header = false)发送table数据的回包
void send_response_json(object res, mixed data)发送json数据的回包
void send_response_buffer(object res, mixed buff)发送buffer数据的回包
map gen_response(ResponseCode code, mixed data = "")生成回包数据

FWebgmToken.gs

webgm的Token管理(颁发/废弃/同步)

函数原型函数作用
string gen_token()生成token
string take_token(mixed target)领取token
mixed find_target(string token)根据token查找对象
bool discard_token(string token)废弃token

FWebgmUrls.gs

webgm的URL管理(等级&标签&函数)

函数原型函数作用
array get_urls()获取所有注册的消息号
map get_url2func()获取所有注册的消息号及其函数
function get_url_func(string url)获取消息号对应的方法
bool exist_url(string url)消息号已存在
int get_url_level(string url)获取url的最小等级限制
void set_url_level(string url, int level)设置指定URL允许的最小等级
bool exist_url_tag(string url, UrlTag tag)是否存在URL的标签
bool is_auth_whitelist_url(string url)是否为认证白名单的url
bool is_auto_transmit_url(string url)是否为自动转发的url
bool is_ignore_tracelog_url(string url)是否为忽略追踪日志的url
bool is_ignore_debugprint_url(string url)是否为忽略调试打印的url
void add_url_tag(string url, UrlTag tag)添加url的标签
void del_url_tag(string url, UrlTag tag)移除url的标签
void add_url_prefix_tag(string url_prefix, UrlTag tag)添加URL前缀的标签
void del_url_prefix_tag(string url_prefix, UrlTag tag)移除URL前缀的标签
bool match_tag(mixed val, UrlTag tag)是否匹配该标签

FWebgmVerify.gs

webgm的签名校验

函数原型函数作用
string get_internal_mask()获取内部加密掩码
void set_internal_mask(string internal_mask)设置内部加密掩码
string mask_md5(string plaintext)加密明文(MD5)
string mask_encrypt(string plaintext)加密明文(DES)
string mask_decrypt(string ciphertext)解密密文(DES)
string encrypt_passwd(string plaintext)加密密码明文(MD5)
string encrypt_secret(string plaintext)加密密钥明文(DES)
string decrypt_secret(string ciphertext)加密密钥密文(DES)
string random_passwd(bool encrypt = false)生成随机密码
string random_secret(bool encrypt = false, int length = 16)生成随机密钥
bool gen_qrcode(string secret, string name, string title = "jszx", string path = "/", bool need_save = true)在本地生成二维码PNG文件
string calc_sign(string token, mixed data)计算签名
bool check_sign(string token, string sign, mixed data)检查签名
string std_md5(mixed str_or_buff)MD5明文
string des_encode(string key, string plaintext)加密明文
string des_dedcode(string key, string ciphertext)解密密文

FWebgmVersion.gs

webgm的版本检测

函数原型函数作用
map parse_version(string version)解析版本
map parse_pkg(string pkg_name)根据package.json解析pkg

http_service.gs

综合的HTTP服务功能,集成调试打印,链接校验等功能

函数原型函数作用
bool setup(string service_name, mixed conf_or_file)设置HTTP服务
bool start()开启HTTP服务
bool stop()关闭HTTP服务
void add_filter(object ob, bool head_insert = false)注册filter
void register_all_filters(string dir, bool head_insert = false)将指定文件夹下的文件注册成filters
void add_handler(string url, function func)注册handler
void add_handler_forward_func(function func)添加前置处理函数
void add_handler_backward_func(function func)添加后置处理函数
void register_all_handlers(string dir, string prefix = "/")将指定文件夹下的文件注册成handler
string get_service_name()获取服务名称
httpserver get_httpserver_ob()获取监听对象
httpserver get_listen_ob()获取监听对象 - 兼容旧版本
void reload_assets()重新加载资源
mixed get_http_config(string path = "")获取HTTP配置
string get_http_host()获取监听地址
int get_http_port()获取监听端口