Quantcast
Channel: THWACK: All Content - Orion SDK
Viewing all articles
Browse latest Browse all 2677

Trusted connection from c# code using REST/JSON API

$
0
0

Hi All,

 

I am a c# developer and my application currently uses PowerShell based Swis integration which I want to replace by REST/JSON API as presented in SwisClient sample..

With PowerShell I can use the syntax "$swis = Connect-Swis -v2 -Trusted -host 10.10.10.1" to create a trusted connection using actual logon credentials.

 

How can I achieve the same functionality with the c# SwisClient ?

I guess I would need to modify below code, only don't know how :

 

    private async Task<JToken> SwisCallAsync(Func<HttpClient, Task<HttpResponseMessage>> doRequest)

    {

      var handler = new WebRequestHandler

      {

        Credentials = new NetworkCredential(_username, _password),

        PreAuthenticate = true,

        ServerCertificateValidationCallback = ValidateServerCertificate

      };

      using (var client = new HttpClient(handler))

      {

        client.BaseAddress = new Uri(string.Format("https://{0}:17778/SolarWinds/InformationService/v3/Json/", _hostname));

        HttpResponseMessage response = await doRequest(client);

        var result = JToken.Load(new JsonTextReader(new StreamReader(await response.Content.ReadAsStreamAsync())));

        if (!response.IsSuccessStatusCode)

        {

          throw new ApplicationException(string.Format("Server returned error: {0} {1}{2}{3}", (int)response.StatusCode,

              response.ReasonPhrase, Environment.NewLine, result));

        }

        return result;

      }

    }

 

Thank you in advance.


Viewing all articles
Browse latest Browse all 2677

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>