HttpClient 对接json 参数,parameter参数 webapi
HttpClient 对接json 参数,parameter参数,header,post
huawei api : https://support.huaweicloud.com/usermanual-lts/lts_04_0216.html
using Newtonsoft.Json;
using System.Text;
using ***.HuaweiLog.Model;
HttpClient 对接json 参数,header,post
public async void WriteLog(string bussinesType, string messageStr, string token)
{
try
{
//string url = "https://lts-access.cn-south-1.myhuaweicloud.com/v2/***/lts/groups/***/streams/***/tenant/contents";
//string tokenstr = "xyz“;
string url = _writeLogUrl;
string tokenstr = token;
logModel logInfo = new logModel();
long time = new DateTimeOffset(DateTime.UtcNow).ToUnixTimeSeconds();
logInfo.log_time_ns = time * 1000000000;// 纳秒
logInfo.contents = messageStr;
logInfo.labels.user_tag = bussinesType;
var json = JsonConvert.SerializeObject(logInfo);
var data = new StringContent(json, Encoding.UTF8, "application/json");
using (var httpClientHandler = new HttpClientHandler() { ServerCertificateCustomValidationCallback = (message, certificate2, arg3, arg4) => true })
using (var client = new HttpClient(httpClientHandler))
{
client.DefaultRequestHeaders.TryAddWithoutValidation("X-Auth-Token", tokenstr);
client.DefaultRequestHeaders.TryAddWithoutValidation("Content-type", "application/json;charset=UTF-8");
var response = await client.PostAsync(url, data);
//string result = response.Content.ReadAsStringAsync().Result;
Console.WriteLine($"time:"+ System.DateTime.Now.ToString("G") + ",log result:" + result);
}
}
catch (Exception ex)
{
Console.WriteLine($"华为云日志方法调用失败WriteLog(),msg:" + ex.Message);
}
}
HttpClient 对接parameter 参数,header,post
public void WriteLog(string logTag, string logMessage)
{
string url = "http://***/api/HuaweiLog/WriteLog"; //webapi url
Dictionary<string, string> Params = new Dictionary<string, string>();
Params.Add("groupId", "***"); // 华为日志组ID,在华为云LTS日志控制台华为日志组查找,读配置文件
Params.Add("streamId", "***"); // 华为日志组下面的日志流,在华为云LTS日志控制台华为日志组下面的日志流查找,读配置文件
Params.Add("logTag", logTag); // 日志标签
Params.Add("logMessage", logMessage); // 日志内容
HttpClient client = new HttpClient();
client.PostAsync(url, new FormUrlEncodedContent(Params));
}
public class logModel
{
public long log_time_ns { get; set; }
public string contents { get; set; }
public labels labels = new labels();
}
public class labels
{
public string user_tag { get; set; }
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!