Programming/C#

[네트워크 프로그래밍] Http 통신

lee308812 2019. 3. 2. 13:02

- HTTP 통신도 내부적으로 TCP를 이용한다. (일반적으로 포트 = 80)


[ System.Net.HttpWebRequest ]


- BCL에 정의된 HTTP 관련 타입

using System;
using System.IO;
using System.Net;

class Program
{
    static void Main(string[] args)
    {
        // HttpWebRequest 타입은 내부적으로 TCP 소켓을 생성하고
        HttpWebRequest req = WebRequest.Create("http://www.naver.com") as HttpWebRequest;

        // GetResponse 호출 단계에서 지정된 웹 서버로 HTTP 요청을 보내고, 응답을 받는다.
        HttpWebResponse resp = req.GetResponse() as HttpWebResponse;

        // 응답 내용을 담고있는 Stream으로부터 문자열을 반환해서 출력
        using (StreamReader sr = new StreamReader(resp.GetResponseStream()))
        {
            string responseText = sr.ReadToEnd();
            Console.WriteLine(responseText);
        }
    }
}


[ System.Net.WebClient ]


- 더 기능을 추상화한 WebClient 타입도 있다.

- HTTP 통신으로 UploadFile, DownloadFile 같은 여러가지 메서드 제공

using System;
using System.Net;

class Program
{
    static void Main(string[] args)
    {
        WebClient wc = new WebClient();
        string responseText = wc.DownloadString("http://www.naver.com");

        Console.WriteLine(responseText);
    }
}





'Programming > C#' 카테고리의 다른 글

MSSQL Database 연동(2)  (0) 2019.03.11
MSSQL Database 연동(1)  (0) 2019.03.05
app.config  (0) 2019.03.05
[네트워크 프로그래밍] TCP/IP 예제  (0) 2019.02.27
[네트워크 프로그래밍] UDP 예제  (0) 2019.02.27