## 客戶端調用
**PHP使用GatewayWorker中Events.php代碼(只有個onConnect回調設置)**
~~~
<?php
use \GatewayWorker\Lib\Gateway;
class Events
{
// 當有客戶端連接時,將client_id返回,讓mvc框架判斷當前uid并執行綁定
public static function onConnect($client_id)
{
Gateway::sendToClient($client_id, json_encode(array(
'type' => 'init',
'client_id' => $client_id
)));
}
// GatewayWorker建議不做任何業務邏輯,onMessage留空即可
public static function onMessage($client_id, $message)
{
}
}
~~~
**網站頁面js片段**
~~~
/**
* 與GatewayWorker建立websocket連接,域名和端口改為你實際的域名端口,
* 其中端口為Gateway端口,即start_gateway.php指定的端口。
* start_gateway.php 中需要指定websocket協議,像這樣
* $gateway = new Gateway(websocket://0.0.0.0:7272);
*/
ws = new WebSocket("ws://your_domain.com:7272");
// 服務端主動推送消息時會觸發這里的onmessage
ws.onmessage = function(e){
// json數據轉換成js對象
var data = eval("("+e.data+")");
var type = data.type || '';
switch(type){
// Events.php中返回的init類型的消息,將client_id發給后臺進行uid綁定
case 'init':
// 利用jquery發起ajax請求,將client_id發給后端進行uid綁定
$.post('./bind.php', {client_id: data.client_id}, function(data){}, 'json');
break;
// 當mvc框架調用GatewayClient發消息時直接alert出來
default :
alert(e.data);
}
};
~~~
- 序言
- 基礎
- 開發規范
- 目錄結構
- 下載安裝
- 快速開發
- 創建一個表格
- 設置頁面標題
- 設置頁面提示
- 創建右側按鈕
- 創建頂部按鈕
- 隱藏和替換按鈕
- 隱藏第一列多選框
- 一次添加多行列表
- 添加一列
- 字段類型
- status
- text
- text.edit
- picture
- callback
- img_url
- pictures
- link
- files
- switch(2.0+)
- 設置表格主鍵
- 創建一個頂部搜索
- 調用js
- 創建快捷搜索
- 添加數量索引
- 添加表頭排序(2.0.0)
- 添加一個右側彈窗按鈕
- 創建一個表單
- 表單字段說明
- 文本框
- 密碼框
- 單選框
- 復選框
- 單圖上傳
- 多圖上傳
- 下拉框
- 多行文本
- 隱藏域
- 單文件上傳
- 多文件上傳
- 富文本編輯器
- 靜態文本
- 排序
- 數字輸入框
- 選擇圖標
- 關聯聯動
- 多級聯動
- selectAjax(2.0+)
- 使用自定義JS文件
- 使用自定義CSS文件
- 公用函數
- 框架common
- is_signin
- data_auth_sign
- parse_attr
- parse_sql
- get_client_ip
- get_file_url
- get_files_url
- get_thumb
- hook
- p
- get_location
- format_linkage
- format_bytes
- action_log
- parse_action
- execute_action
- role_auth
- module_config
- addons_menage
- addons_config
- get_addons_class
- addons_action_exists
- addons_model_exists
- addons_validate_exists
- get_addons_model
- get_model_name
- get_model_title
- get_model_type
- get_model_table
- is_default_field
- table_exist
- implode_attr
- parse_array
- parse_name
- parse_config
- addons_parse_config
- addons_action
- get_adminname
- get_nickname
- set_config_value
- get_file_name
- format_time
- get_order_sn
- get_msectime
- timeToHIS
- getMobileType
- curl_post
- friend_date
- str2sub
- createLinkagesToken
- get_level_data
- get_level_pid
- get_level_key_data
- clear_js
- get_sex
- get_age
- user_is_signin
- user_role_auth
- filter
- filter_data
- time_tran
- search_time
- time2string
- check_password
- check_mobile
- push
- common模塊
- 模塊開發
- 創建模塊信息
- 安裝模塊
- 模塊配置
- 控制器
- 創建菜單
- 第一個控制器
- 方法參考
- 導出模塊
- 插件開發
- 插件結構
- 插件信息
- 管理界面的字段信息
- 新增或編輯字段
- 插件鉤子
- 數據庫表前綴
- 插件配置
- 插件開發
- 控制器
- 模型
- 驗證器
- 方法參考
- 自定義表
- 接口開發
- 新增接口
- 請求參數/返回參數
- 業務流程
- 應用管理
- MOCK接口
- 其他說明
- Redis使用說明
- 圖片上傳說明
- CMS模塊說明
- 函數參考
- 商城模塊說明
- 購物流程
- 直接購買提交購物訂單
- 購物車流程
- 商品添加到購物車
- 購物車中商品數量變化
- 購物車提交訂單
- 單客服使用說明
- 服務部署
- 客戶端調用
- 后臺客服端使用
- 更新說明(2.0+)