Ejemplo n.º 1
0
            /// <summary>
            /// 处理接收发送数据
            /// </summary>
            /// <param name="type">发送类型</param>
            /// <param name="data">发送数据</param>
            public static void processResponseData(string route, int index,
                                                   int status, string errmsg, JsonData data)
            {
                var sys = Get();

                RequestObject req = sys.popRequestObject(route, index);

                RequestObject.SuccessAction onSuccess = req.onSuccess;
                RequestObject.ErrorAction   onError   = req.onError;

                // 如果没有剩下的 ReqObj 了,清除加载窗口
                if (!sys.hasRequestObject())
                {
                    sys.gameSys.requestLoadEnd();
                }

                if (req == null)
                {
                    throw new GameException(
                              GameException.Type.RequestObjectNotFound, onError);
                }
                if (status > 0)
                {
                    throw new GameException(status, errmsg, onError);
                }
                onSuccess?.Invoke(data);
            }
Ejemplo n.º 2
0
        // 配置请求对象属性
        #region 配置请求配置

        /// <summary>
        /// 统一配置回调参数
        /// </summary>
        /// <param name="success">成功回调</param>
        /// <param name="error">错误回调</param>
        /// <param name="show">是否显示加载</param>
        /// <param name="tips">加载提示文本</param>
        public void setup(
            RequestObject.SuccessAction success = null,
            RequestObject.ErrorAction error     = null,
            bool show = true, string tips = "")
        {
            successHandler = success; errorHandler = error;
            showLoading    = show; tipsText = tips;
        }
Ejemplo n.º 3
0
 /// <summary>
 /// 配置并发送请求对象
 /// </summary>
 /// <param name="route">路由</param>
 /// <param name="data">数据</param>
 /// <param name="success">成功回调</param>
 /// <param name="error">错误回调</param>
 /// <param name="show">是否显示加载</param>
 /// <param name="tips">加载提示文本</param>
 /// <param name="emit">是否为发射数据</param>
 public void setupRequest(string route, JsonData data         = null,
                          RequestObject.SuccessAction success = null,
                          RequestObject.ErrorAction error     = null,
                          bool show = true, string tips = "", bool emit = false)
 {
     if (emit == true)
     {
         postEmit(route, data);
     }
     else
     {
         setup(success, error, show, tips);
         postRequest(route, data);
     }
 }
Ejemplo n.º 4
0
 /// <summary>
 /// 处理处理错误(有action的错误)
 /// </summary>
 /// <param name="code">错误码</param>
 /// <param name="errmsg">错误信息</param>
 void handleProcessError(int code, string errmsg, RequestObject.ErrorAction action = null)
 {
     action = action ?? DefaultErrorHandler;
     action.Invoke(code, errmsg);
 }
Ejemplo n.º 5
0
 /// <summary>
 /// 配置并添加请求
 /// </summary>
 /// <param name="route">路由</param>
 /// <param name="success">成功回调</param>
 /// <param name="error">错误回调</param>
 /// <param name="show">是否显示加载</param>
 /// <param name="tips">加载提示文本</param>
 RequestObject pushRequestObject(string route, JsonData data,
                                 RequestObject.SuccessAction success = null, RequestObject.ErrorAction error = null,
                                 bool show = true, string tips = "")
 {
     return(pushRequestObject(route, new RequestObject(data, success, error, show, tips)));
 }