心跳class
This commit is contained in:
parent
a1d7ce97a2
commit
68501300a6
@ -14,12 +14,43 @@ namespace HeartbeatSender
|
|||||||
{
|
{
|
||||||
private readonly HttpClient httpClient = new HttpClient();
|
private readonly HttpClient httpClient = new HttpClient();
|
||||||
private string token;
|
private string token;
|
||||||
private string heartbeatUrl;
|
private string token_heartbeatUrl;
|
||||||
|
private string init_heartbeatUrl;
|
||||||
|
|
||||||
public heartbeatSender(string heartbeatUrl)
|
public heartbeatSender()
|
||||||
{
|
{
|
||||||
this.heartbeatUrl = heartbeatUrl;
|
LoadHeartbeatUrls("txt/HeartBeat.txt");
|
||||||
}
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// 讀取URL
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="filePath">路徑</param>
|
||||||
|
private void LoadHeartbeatUrls(string filePath)
|
||||||
|
{
|
||||||
|
if (!File.Exists(filePath))
|
||||||
|
{
|
||||||
|
Console.WriteLine("找不到 HeartBeat.txt");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
string[] lines = File.ReadAllLines(filePath);
|
||||||
|
|
||||||
|
foreach (string line in lines)
|
||||||
|
{
|
||||||
|
if (line.StartsWith("init:"))
|
||||||
|
{
|
||||||
|
init_heartbeatUrl = line.Substring("init:".Length).Trim();
|
||||||
|
}
|
||||||
|
else if (line.StartsWith("token:"))
|
||||||
|
{
|
||||||
|
token_heartbeatUrl = line.Substring("token:".Length).Trim();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Console.WriteLine("init URL: " + init_heartbeatUrl);
|
||||||
|
Console.WriteLine("token URL: " + token_heartbeatUrl);
|
||||||
|
}
|
||||||
|
|
||||||
public static string GetLocalIPv4()
|
public static string GetLocalIPv4()
|
||||||
{
|
{
|
||||||
foreach (var ip in Dns.GetHostEntry(Dns.GetHostName()).AddressList)
|
foreach (var ip in Dns.GetHostEntry(Dns.GetHostName()).AddressList)
|
||||||
@ -33,7 +64,8 @@ namespace HeartbeatSender
|
|||||||
}
|
}
|
||||||
public async Task<bool> LoginAndGetTokenAsync()
|
public async Task<bool> LoginAndGetTokenAsync()
|
||||||
{
|
{
|
||||||
var loginUrl = "http://zqd.superstar.dnsnet.cc/api/room/receiveRegister";
|
// init_heartbeat
|
||||||
|
//var loginUrl = "http://zqd.superstar.dnsnet.cc/api/room/receiveRegister";
|
||||||
string hostName = System.Net.Dns.GetHostName();
|
string hostName = System.Net.Dns.GetHostName();
|
||||||
|
|
||||||
var loginPayload = new
|
var loginPayload = new
|
||||||
@ -50,7 +82,7 @@ namespace HeartbeatSender
|
|||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var response = await httpClient.PostAsync(loginUrl, content);
|
var response = await httpClient.PostAsync(init_heartbeatUrl, content);
|
||||||
response.EnsureSuccessStatusCode();
|
response.EnsureSuccessStatusCode();
|
||||||
|
|
||||||
var responseJson = await response.Content.ReadAsStringAsync();
|
var responseJson = await response.Content.ReadAsStringAsync();
|
||||||
@ -97,8 +129,9 @@ namespace HeartbeatSender
|
|||||||
|
|
||||||
var json = JsonSerializer.Serialize(heartbeatData);
|
var json = JsonSerializer.Serialize(heartbeatData);
|
||||||
var content = new StringContent(json, Encoding.UTF8, "application/json");
|
var content = new StringContent(json, Encoding.UTF8, "application/json");
|
||||||
heartbeatUrl = "http://zqd.superstar.dnsnet.cc/api/room/heartbeat";
|
// token_heartbeat
|
||||||
var request = new HttpRequestMessage(HttpMethod.Post, heartbeatUrl);
|
// heartbeatUrl = "http://zqd.superstar.dnsnet.cc/api/room/heartbeat";
|
||||||
|
var request = new HttpRequestMessage(HttpMethod.Post, token_heartbeatUrl);
|
||||||
request.Content = content;
|
request.Content = content;
|
||||||
request.Headers.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", token);
|
request.Headers.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", token);
|
||||||
// Console.WriteLine("送出的 JSON:");
|
// Console.WriteLine("送出的 JSON:");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user