コード例 #1
0
        public static RespUploadData Parse(string res)
        {
            RespUploadData resultData = null;

            try
            {
                resultData = JsonUtility.FromJson <RespUploadData>(res);
            }
            catch (Exception e)
            {
                PTDebug.LogError(string.Format("Type:{0} 解析出错,解析数据:{1}", "RespUploadData", res));
                return(null);
            }
            return(resultData);
        }
コード例 #2
0
 public static IDisposable UploadFile(string filePath, Action <string, string> onCallback = null)
 {
     if (!File.Exists(filePath))
     {
         PTDebug.LogError("文件不存在!路径:{0}", filePath);
         onCallback.InvokeGracefully(filePath, null);
         return(null);
     }
     return(GetUploadToken(token =>
     {
         if (token.IsNullOrEmpty())
         {
             PTDebug.LogError("获取UploadToken失败!");
             onCallback.InvokeGracefully(filePath, null);
             return;
         }
         var data = GetUploadFliePostData(filePath, token);
         ObservableWWW.Post(data.Url, data.Form).Timeout(TimeSpan.FromSeconds(30)).Subscribe(res =>
         {
             var resData = RespUploadData.Parse(res);
             if (resData.code == 0)
             {
                 onCallback.InvokeGracefully(filePath, RespUploadData.GetFileName(res));
             }
             else
             {
                 PTDebug.LogError(resData.message);
                 onCallback.InvokeGracefully(filePath, null);
             }
         }, e =>
         {
             PTDebug.LogError("Error:" + e.ToString());
             onCallback.InvokeGracefully(filePath, null);
         });
     }));
 }