Ejemplo n.º 1
0
        private static async Task<Quote> GetQuoteRestSharp()
        {
            var uri = new Uri("https://andruxnet-random-famous-quotes.p.mashape.com/?cat=movies");
            using (var client = new RestSharp.Portable.HttpClient.RestClient(uri))
            {
                var request = new RestRequest(Method.POST);
                request.AddHeader("X-Mashape-Key", "SVRrKUoLRBmshZ7IANqnF4kmkxt7p1kYcMNjsnWxDGnoyCOUwh");
                //request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
                request.AddHeader("Accept", "application/json");

                var response = await client.Execute<Quote>(request);
                var quote = await Task.Run(() => new JsonDeserializer().Deserialize<Quote>(response));
                return quote;
            }
        }
 public Task<Component> UpdateComponentStatusAsync(string roomId, string deviceId, bool status)
 {
     var request = new RestRequest("components?roomId={roomId}&deviceId={deviceId}&status={status}") {Method = HttpMethod.Put};
     request.AddUrlSegment("roomId", roomId)
         .AddUrlSegment("deviceId", deviceId)
         .AddUrlSegment("status", status);
     request.AddHeader("Content-Type", "application/json");
     var task = _client.Execute<Component>(request).ContinueWith(t => t.Result.Data);
     return task;
 }
Ejemplo n.º 3
0
Archivo: API.cs Proyecto: Dallas92/HOLA
		public static async Task<JObject> Execute(string callback, HttpMethod httpMethod,
									  			  Dictionary<string,string> parameters, 
									  			  Dictionary<string,string> files = null, object obj = null)
		{
			//init request
			var request = new RestRequest (callback, httpMethod);
			request.AddHeader("Content-Type", "application/json; charset=utf-8");


			//add parameters
			foreach (var key in parameters.Keys) 
			{
				request.AddParameter (key, parameters [key].ToString ());
			}
			

			//add files
			//if (files != null && files.Keys.Count > 0) {
			//	foreach (var key in files.Keys) {
			//		request.AddFile( .AddFile (key, files[key]);
			//	}
			//}


			//execute
			var result = await client.Execute<string>(request);


			//print response
			Debug.WriteLine (callback);
			Debug.WriteLine (result.Data);


			//save cookies
			//var sessionCookie = response.Cookies.SingleOrDefault(x => x.Name == "WRAD_SESSION");
			//if (sessionCookie != null && APIHelper.restClient.CookieContainer==null)
			//{
			//	APIHelper.restClient.CookieContainer = new CookieContainer ();
			///	APIHelper.restClient.CookieContainer.Add(new Uri(APIHelper.baseUrl),new Cookie(sessionCookie.Name, sessionCookie.Value, sessionCookie.Path, sessionCookie.Domain));
			//}


			//string to JObect deserialization
			try{
				return JObject.Parse(result.Data);
			} catch(Exception ex){
				Debug.WriteLine (ex.Message + (ex.InnerException != null ? ("\n" + ex.InnerException.Message) : ""));
				return null;
			}
		}
Ejemplo n.º 4
0
        /// <summary>
        /// Permet la connexion du joueur
        /// </summary>
        /// <param name="userNotLog">l'objet User contenant le joueur voulant se connecter</param>
        /// <returns></returns>
        public async Task<dynamic> loginUser(User userNotLog)
        {
            RestRequest request = new RestRequest("user/login", Method.POST);

            request.AddHeader("Content-Type", "application/json");
            request.AddJsonBody(userNotLog);
            _client.IgnoreResponseStatusCode = true;
            var response = await _client.Execute<dynamic>(request);
            var data = Encoding.UTF8.GetString(response.RawBytes);
            //Permet de recuperer le message d'erreur avant que le tache se termine
            if (!response.IsSuccess){
                throw new Exception(data);
            }
            return data;
        }
Ejemplo n.º 5
0
        public async Task<dynamic> passwordForgot(string mail)
        {
            RestRequest request = new RestRequest("user/passwordforgot", Method.POST);

            request.AddHeader("Content-Type", "application/json");
            request.AddParameter("mail", mail, ParameterType.RequestBody, "application/json");
            _client.IgnoreResponseStatusCode = true;
            var response = await _client.Execute<dynamic>(request);
            var data = Encoding.UTF8.GetString(response.RawBytes);
            //Permet de recuperer le message d'erreur avant que le tache se termine
            if (!response.IsSuccess)
            {
                throw new Exception(data);
            }
            return data;
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Converts this instance to an IRestRequest
        /// </summary>
        internal IRestRequest UnShim()
        {
            var req = new RestRequest(this.Resource, Unshim(this.Method));

            if (!this.CsrfToken.IsBlank())
                req.AddHeader("X-CSRF-Token", this.CsrfToken);

            if (this.Body != null)
                req.AddJsonBody(this.Body);

            if (this.Cookies != null)
                foreach (var cookie in this.Cookies)
                    req.AddParameter(cookie.Key, cookie.Value, ParameterType.Cookie);

            if (this.Parameters != null)
            {
                //if (this.Parameters.Count > 0)
                //	req.AddHeader("Content-Type", "application/x-www-form-urlencoded");

                foreach (var param in this.Parameters)
                    req.AddParameter(param.Key, param.Value, ParameterType.RequestBody);
            }



            //later: try this for attaching files to nodes:
            //req.ContentCollectionMode = ContentCollectionMode.MultiPartForFileParameters;


            //req.RequestFormat = DataFormat.Json; <--- Drupal ignores this

            //if (this.Attachment != null)
            //{
            //	req.AddFile(this.Attachment.Name, 
            //				this.Attachment.Stream, 
            //				this.Attachment.Name, 
            //				MediaTypeHeaderValue.Parse("multipart/form-data"));

            //	req.AddParameter("field_name", "field_private_file");//hack: hard-code!
            //	//req.AddParameter("files[files]", "@" + this.Attachment.Name);
            //}

            return req;
        }
Ejemplo n.º 7
0
        public RestRequest CreateGetFileRequest(string path, string root, long startByte, long endByte, string rev)
        {
            var request = new RestRequest("{version}/files/{root}{path}", HttpMethod.Get);
            request.AddParameter("version", _version, ParameterType.UrlSegment);
            request.AddParameter("path", path, ParameterType.UrlSegment);
            request.AddParameter("root", root, ParameterType.UrlSegment);
            request.AddParameter("rev", rev, ParameterType.UrlSegment);
            request.AddHeader("Range", "bytes=" + startByte + "-" + endByte);

            return request;
        }