Giter VIP home page Giter VIP logo

utilities.requestclient's Introduction

RequestClient


alt tag

Easiest way to handle rest requests

Build status NuGet version

NuGet Packages

PM> Install-Package Utilities.RequestClient

Features:

  • Currently supports XML, JSON and BSON request contents and does not support primitive types as return object excluding string
  • Provides easy way to handle GET, POST, PUT and DELETE requests as sync or async.

Usage:

Creating instance for RequestClient:

using (RequestClient requestClient = RequestClient.SetBaseUri(string baseUri))
{
}

after creating instance for RequestClient then you can use POST, GET, PUT or DELETE methods for requests:

requestClient.Get<ResultDto>($"get-action?queryString=value");
requestClient.Post<ResultDto>("post-action", RequestDto requestDto);
requestClient.Put<ResultDto>("put-action", RequestDto requestDto);
requestClient.Delete<ResultDto>($"delete-action?queryString=value");

or you can use Async methods for requests:

await requestClient.GetAsync<ResultDto>($"get-action?queryString=value");
await requestClient.PostAsync<ResultDto>("post-action", RequestDto requestDto);
await requestClient.PutAsync<ResultDto>("put-action", RequestDto requestDto);
await requestClient.DeleteAsync<ResultDto>($"delete-action?queryString=value");

You can configure requests:

requestClient
    .AddHeader(string key,string value)
    .SetTimeout(TimeSpan.FromMilliseconds(10000))
    .Get<ResultDto>($"get-action?queryString=value");

There are several options you can set:

  • .AddHeader(string key, string value)
  • .SetTimeout(TimeSpan timespan) or .SetTimeout(double milliseconds)
  • .SetEncoding(Encoding encoding)
  • .SetMediaType(MediaTypes mediaType)
  • .SetAuthorizationHeader(string scheme, string parameter)
  • .SetBasicAuthorizationHeader(string basicAuthHeader)
  • .SetBearerAuthorizationHeader(string bearerAuthHeader)

utilities.requestclient's People

Contributors

mnabaci avatar

Watchers

 avatar  avatar

Forkers

hilalabaci

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.