Mark things as non-static and remove unused code.
Also, build the URI instead of hardcoding things. Assume HTTPS over 443 unless specified
This commit is contained in:
@@ -1,7 +1,6 @@
|
|||||||
using AS1024.CommunityDocumentationPage.Models;
|
using AS1024.CommunityDocumentationPage.Models;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using NetBox;
|
|
||||||
using System.Net.Http;
|
using System.Net.Http;
|
||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
@@ -31,15 +30,16 @@ namespace AS1024.CommunityDocumentationPage.Controllers
|
|||||||
return View(filtered);
|
return View(filtered);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static async Task<RouteTargets> ReadAPI(string token)
|
[NonAction]
|
||||||
|
private async Task<RouteTargets> ReadAPI(string token)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
HttpClient client = new();
|
HttpClient client = new();
|
||||||
client.DefaultRequestHeaders.Clear();
|
client.DefaultRequestHeaders.Clear();
|
||||||
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
|
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
|
||||||
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Token", token);
|
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Token", token);
|
||||||
var result = await client.GetAsync("https://netbox.as1024.net/api/ipam/route-targets/");
|
var result = await client.GetAsync(BuildNetBoxURI());
|
||||||
var stringResult = await result.Content.ReadAsStringAsync();
|
var stringResult = await result.Content.ReadAsStringAsync();
|
||||||
return JsonConvert.DeserializeObject<RouteTargets>(stringResult);
|
return JsonConvert.DeserializeObject<RouteTargets>(stringResult);
|
||||||
} catch
|
} catch
|
||||||
@@ -48,6 +48,18 @@ namespace AS1024.CommunityDocumentationPage.Controllers
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[NonAction]
|
||||||
|
protected Uri BuildNetBoxURI()
|
||||||
|
{
|
||||||
|
var endUrl = new UriBuilder();
|
||||||
|
|
||||||
|
endUrl.Path = "/api/ipam/route-targets";
|
||||||
|
endUrl.Host = Configuration["NetBoxHost"];
|
||||||
|
endUrl.Scheme = "https";
|
||||||
|
|
||||||
|
return endUrl.Uri;
|
||||||
|
}
|
||||||
|
|
||||||
public IActionResult Privacy()
|
public IActionResult Privacy()
|
||||||
{
|
{
|
||||||
return View();
|
return View();
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user