반응형
using System;
using System.Net.Http;
using System.Threading.Tasks;
using Newtonsoft.Json;
// nuget 다운로드 필요
using System.IO;
using System.Text;
namespace ConsoleApp1
{
class Program
{
static async Task Main()
{
string apiUrl = "http://127.0.0.1/gps/api/view.php";
using (HttpClient client = new HttpClient())
{
try
{
HttpResponseMessage response = await client.GetAsync(apiUrl);
if (response.IsSuccessStatusCode)
{
string jsonContent = await response.Content.ReadAsStringAsync();
// JSON 데이터를 파싱하여 객체로 변환
var data = JsonConvert.DeserializeObject(jsonContent);
// JSON 데이터 파일로 저장
string jsonFilePath = "dump.json";
File.WriteAllText(jsonFilePath, JsonConvert.SerializeObject(data, Formatting.Indented), Encoding.UTF8);
Console.WriteLine(jsonContent);
Console.WriteLine("dump.json에 JSON 데이터를 파일에 저장했습니다.");
}
else
{
Console.WriteLine("API 요청이 실패했습니다.");
}
}
catch (Exception ex)
{
Console.WriteLine($"오류 발생: {ex.Message}");
}
}
Console.ReadLine();
// 콘솔창 대기 상태 위해 입력 값 요청
}
}
}
728x90
'Programming > C# - Window' 카테고리의 다른 글
C#/ TCP-IP 통신 (0) | 2023.09.27 |
---|---|
C#/ NModbus4(Modbus) 모드버스 (0) | 2023.09.27 |
C#/ SQL server 사용 (0) | 2023.09.04 |
C#/ 보충 1(객체, 스레드, 컬렉션스) (0) | 2023.09.04 |
C# / 동기(async), 비동기(await), 병렬(parallel) 처리 (0) | 2023.08.04 |