Beispiel #1
0
        private async Task <IResourceResponse> InternalGetResponse(IResourceConfig config)
        {
            try {
                if (config.UseQwebAuthentication)
                {
                    PerformQwebAuthentiacation(config);
                }
                config = config ?? ResourceConfig.Default;
                State  = ResourceRequestState.Creating;
                var nativeRequest = WebRequest.Create(Uri);
                SetupNativeRequest(nativeRequest, config);
                State = ResourceRequestState.Created;
                await PostDataToServer(config, nativeRequest);

                State = ResourceRequestState.Get;
                if (config.AcceptAllCeritficates)
                {
                    nativeRequest.Headers[ALLOW_ALL_CERTIFICATES_HEADER] = "1";
                }
                var nativeResponse = await nativeRequest.GetResponseAsync();

                State = ResourceRequestState.Finished;
                return(new WebResourceResponse(nativeResponse, nativeRequest, config));
            }
            catch (Exception ex) {
                State     = ResourceRequestState.Error;
                LastError = new ResourceException("erorr in get response", ex);
            }
            return(null);
        }
        // Start is called before the first frame update
        void Start()
        {
            //get UNIT JSON from web server ...
            webReqs          = GetComponent <WebModule>();
            _VRScreenManager = GetComponent <VR_ScreenManager>();

            resourceRequestState = ResourceRequestState.waiting_for_resource;
            webReqs.fetchData(url);
        }
Beispiel #3
0
 private async Task PostDataToServer(IResourceConfig config, WebRequest nativeRequest)
 {
     if (config.Method == "POST")
     {
         if (null != config.RequestPostData)
         {
             State = ResourceRequestState.Post;
             using (var stream = new BinaryWriter(await nativeRequest.GetRequestStreamAsync())) {
                 stream.Write(config.RequestPostData, 0, config.RequestPostData.Length);
             }
         }
         else if (!string.IsNullOrWhiteSpace(config.RequestFormString))
         {
             nativeRequest.ContentType = "application/x-www-form-urlencoded";
             State = ResourceRequestState.Post;
             using (var stream = new StreamWriter(await nativeRequest.GetRequestStreamAsync()))
             {
                 stream.Write(config.RequestFormString);
             }
         }
     }
 }
Beispiel #4
0
 public void SetRequestState(ResourceRequestState requestState)
 {
     ResourceProvision.RequestState = requestState;
 }
 public void SetRequestState(ResourceRequestState requestState)
 {
     ResourceRequest.RequestState = requestState;
 }