/// <summary>
 /// 下载文本
 /// </summary>
 /// <param name="url">请求的链接</param>
 /// <param name="action">发生的事件</param>
 /// <param name="method">请求的方式</param>
 /// <returns></returns>
 public static bool DownloadText(string url, RequestTextEvent action, string method = UnityWebRequest.kHttpVerbGET)
 {
     if (IsNull(url, action, action.action))
     {
         return(true);
     }
     Instance.StartCoroutine(Instance.DownloadTextIEnumerator(url, method, action));
     return(false);
 }
    IEnumerator DownloadTextIEnumerator(string url, string method, RequestTextEvent action)
    {
        var request = new UnityWebRequest(url, method);

        request.downloadHandler = new DownloadHandlerBuffer();
        if (action.downloadProgress != null)
        {
            StartCoroutine(DownloadProgress(request, action.downloadProgress));
        }
        yield return(request.SendWebRequest());

        Dispose(request, () =>
        {
            action.action(request.downloadHandler.text);
        }, action.error, action.error404, action.error500);
    }
示例#3
0
        private void InitEvent()
        {
            if (_eventAggregator == null)
            {
                return;
            }

            _textChangedEvent = _eventAggregator.GetEvent <TextChangedEvent>();
            _textChangedEvent.Subscribe(OnTextChanged);

            _requestTextEvent = _eventAggregator.GetEvent <RequestTextEvent>();
            _requestTextEvent.Subscribe(OnRequestText);

            _saveTextEvent = _eventAggregator.GetEvent <SaveTextEvent>();
            _saveTextEvent.Subscribe(OnSaveText);

            _cacheTextEvent = _eventAggregator.GetEvent <CacheTextEvent>();
            _cacheTextEvent.Subscribe(OnCacheText);
        }
示例#4
0
        private void InitEvent()
        {
            if (_eventAggregator == null)
            {
                return;
            }

            _requestSettingEvent = _eventAggregator.GetEvent <RequestSettingEvent>();
            _requestSettingEvent.Subscribe(OnRequestSetting);

            _textChangedEvent = _eventAggregator.GetEvent <TextChangedEvent>();
            _textChangedEvent.Subscribe(OnTextChanged, ThreadOption.UIThread);

            _requestTextEvent = _eventAggregator.GetEvent <RequestTextEvent>();
            _requestTextEvent.Subscribe(OnRequestText);

            _saveTextEvent = _eventAggregator.GetEvent <SaveTextEvent>();
            _saveTextEvent.Subscribe(OnSaveText, ThreadOption.UIThread);
        }