跳到主要内容

webgm_utils

简介

提供webgm操作相关的工具库

组件接口

FMod.gs

模块组件

函数原型函数作用
bool setup_default(map m)默认安装
bool setup_mod(map conf = )模块安装

FUrl2Tags.gs

URL及其对应的标签

函数原型函数作用
void init_url2tags(UrlTag tag, map url2flag, map prefix2flag)初始化标签
bool exist_url_tag(string url, UrlTag tag)是否存在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前缀的标签

http_service.gs

Http的监听服务对象

函数原型函数作用
object start_listen(string service_name, mixed conf_or_file = nil)开启http监听
void set_httpserver_ob(object listen_ob)设置http服务对象
bool stop_listen()关闭http监听
void add_handler(string url, function func)注册handler
void add_handler_forward_func(function func)添加前置处理函数
bool call_handler_forward_funcs(mixed req, mixed res)执行所有前置处理函数
void add_handler_backward_func(function func)添加后置处理函数
bool call_handler_backward_funcs(mixed req, mixed res)执行所有后置处理函数
void register_all_handlers(string dir, string prefix = "/")将指定文件夹下的文件注册成handler
void add_filter(object ob, bool head_insert = true)注册handler
void register_all_filters(string dir, bool head_insert = true)将指定文件夹下的文件注册成filters

webgm_base.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)生成内存信息
mixed gen_vaild_data(mixed data, int FIELD_MAX_SIZE = "1024 * 1024", string AMEND_VALUE = "...")生成有效的数据(会改变原始map数据)
string gen_pure_name(mixed filepath_or_object)获取不带路径和扩展名的纯文件名
array get_listen_ports()获取所有监听端口列表
map get_listen_port2cos()获取所有监听端口及其协程
buffer read_all_data(string file_path)读取所有文件数据

webgm_cmds.gs

webgm的消息号处理

函数原型函数作用
void add_handler(string url, function func)注册handler
void register_all_handlers(string dir, string prefix = "/")将指定文件夹下的文件注册成handler
void register_all_filters(string dir, bool head_insert = true)将指定文件夹下的文件注册成filters

webgm_conf.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)递归文件夹加载配置

webgm_hotfix.gs

webgm的热修复相关逻辑

函数原型函数作用
bool update_handler(string file_name)模拟GS中的update操作
string hotfix_handler(string file_path, mixed file_content, function success_callback)执行热更操作
array find_programs(string file_name)获取同名的program
mixed copyfile_to_localstorage(string file_path, mixed file_content)拷贝文件到本地存储

webgm_listen.gs

webgm的HTTP监听

函数原型函数作用
object start_http_service(string service_name, mixed conf_or_file = nil)开启http服务
bool stop_http_service(string service_name)关闭http服务
object load_http_service(string service_name)获取http服务
map load_all_http_service()获取所有http服务

webgm_menu.gs

webgm的菜单管理

函数原型函数作用
void refresh_menu(int level = 1, map menu2info = nil)刷新当前菜单
map get_menus()获取菜单配置
map get_menu2file()获取菜单对应的配置文件
array get_web_menu(int level = 1)获取web的菜单列表
map load_menu(string dir, map menu2path = )加载文件夹中的菜单配置文件
bool append_internal_menu_dirs(mixed dir_or_dirs, bool on_tail = true)增加内部菜单列表
bool remove_internal_menu_dirs(mixed dir_or_dirs)移除内部菜单列表

webgm_micro.gs

webgm的微服务操作

函数原型函数作用
bool micro_setup(map conf)安装微服务的客户端
mixed micro_register(string server_id, map server_cache)注册微服务
mixed micro_unregister(string server_id)卸载微服务
mixed micro_refresh(string server_id)刷新微服务
mixed micro_post(string cmd, mixed data, map headers = , map extra = , ContentTypePost type = "ContentTypePost.json")发送给微服务的请求

webgm_mods.gs

webgm的模块加载相关逻辑

函数原型函数作用
void register_all_daemons(string dir, string module = "Load")递归加载指定目录下的daemons
object register_daemon(string path, string module = "Load")加载指定文件路径下的daemon
array create_mod(string mod_name, string mods_dir = "./common/mods/")创建模块

webgm_post.gs

webgm的请求发送

函数原型函数作用
map post(string url, mixed data = nil, int type = "ContentTypePost.json", map headers = , map extra = )发送post请求(规范返回值)
map co_execute_async_by_urls(function handle_func, map url2data = , int timeout = 5)异步执行相关urls的操作(handle_func)
map co_execute_async(function handle_func, map key2data = , int timeout = 5)异步执行相关keys的操作(handle_func)

webgm_resp.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_file(object res, string file_name, mixed file_buff)发送文件(文本)数据的回包 - 兼容旧版本
void send_response_download(object res, mixed data = "")发送文件下载的回包
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 = "")生成回包数据
bool check_response(mixed result)检查回包数据的格式是否符合要求
mixed gen_response_data(mixed data = "", bool is_table = false, bool auto_header = false)生成回包数据
map gen_response_data_of_table_by_maps(array maps, bool auto_header = false)Map List数据格式,Table控件的数据格式
map gen_response_data_of_table_by_arrs(array arrs, bool auto_header = false)Array List数据格式,Table控件的数据格式

webgm_tags.gs

webgm的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
bool is_whitelist_url(string url)是否为白名单的url,不需要进行权限认证
void set_whitelist_url(string url, bool flag)设置白名单的url - 兼容旧接口
void add_whitelist_url(string url)添加白名单的url
void del_whitelist_url(string url)移除白名单的url
void set_whitelist_prefix(string prefix, bool flag)设置白名单的前缀
void add_whitelist_prefix(string prefix)添加白名单的前缀
void del_whitelist_prefix(string prefix)移除白名单的前缀

webgm_token.gs

颁发/废弃token

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