HttpWebRequest httpWebRequest 에서 PROXY 사용하기

REST API 형태의 프로그램 소스를 확인하다가 프록시를 적용할 일이 생겼습니다. 요청해서 데이터를 받는 형태로만 계속 사용해 왔기에 어떻게 사용하는지 궁금해서 관련 소스를 챃아서 적용시켰습니다.

 

                HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create("호출주소");
                // 인코딩 UTF-8
                byte[] sendData = UTF8Encoding.UTF8.GetBytes(postData);
                httpWebRequest.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
                httpWebRequest.Method = "POST";
                httpWebRequest.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36";
                httpWebRequest.ContentLength = sendData.Length;
                Stream requestStream = httpWebRequest.GetRequestStream();
                requestStream.Write(sendData, 0, sendData.Length);
                requestStream.Close();

 

위와 같은 형태로 POST 전송을 하는데, 이걸 PROXY로 이용해 보고 싶어져서 관련 내용을 찾아 보았습니다.

이후 RESPONSE전에 프록시로 전송한다는 내용을 넣어주면 간단하게 프록시 처리가 가능하였습니다.

 

                    WebProxy myproxy = new WebProxy("아이피주소:포트", false);
                    myproxy.BypassProxyOnLocal = false;
                    httpWebRequest.Proxy = myproxy;
                    httpWebRequest.Method = "POST";

 

관련내용 참고 하시기 바라겠습니다.