C\#http 에 데 이 터 를 받 는 방법 을 요청 합 니 다.

3603 단어 C#http웹 데이터
본 논문 의 사례 는 여러분 에 게 C\#http 가 웹 페이지 에 데 이 터 를 보 내 고 웹 페이지 를 받 아 달라 고 요 청 했 습 니 다.참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.
우선,우리 에 게 필요 한 것 은 무엇 입 니까?
POST 방식 으로 http 를 요청 하여 웹 페이지 에 데 이 터 를 전송 하고 웹 페이지 가 데 이 터 를 받 은 후에 데 이 터 를 데이터베이스 에 저장 합 니 다.
1.우선 http 에 연결 을 요청 하고 코드 가 바 뀐 데 이 터 를 전송 합 니 다.
2.웹 페이지 는 데 이 터 를 수신 하고 코드 를 바 꾼 후에 데이터베이스 에 저장 합 니 다.
3.웹 페이지 는 전송 자 에 게 우리 가 이미 데 이 터 를 받 았 음 을 나타 낸다.
마찬가지 로 http 도 콘 솔 로 시 뮬 레이 션 을 요청 합 니 다.

static void Main(string[] args)
{
  string result = Post("http://localhost:5534/Home/ToUrl", "  ");
  Console.WriteLine(result);
  Console.ReadKey();
}
/// <summary> 
    ///   Post    Get           
    /// </summary> 
    /// <param name="url">      </param> 
    /// <param name="content">Post      (utf-8   )</param> 
    /// <returns>  </returns> 
    public static string Post(string url, string content)
    {
      //      result    
      string result = "";
      //      HttpWebRequest,      POST
      HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
      req.Method = "POST";
      req.ContentType = "application/x-www-form-urlencoded";

      //  POST  
      byte[] data = Encoding.UTF8.GetBytes(content);
      req.ContentLength = data.Length;
      using (Stream reqStream = req.GetRequestStream())
      {
        reqStream.Write(data, 0, data.Length);
        reqStream.Close();
      }

      //      resp      
      HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
      Stream stream = resp.GetResponseStream();
      //       
      using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
      {
        result = reader.ReadToEnd();
      }
      return result;
    }
그리고 Controller 안에 ToUrl 이 데 이 터 를 받 는 데 사 용 됩 니 다.

public ActionResult ToUrl()
    {
      string result = "";
      string jsonStr = "", line;
      try
      {

        Stream streamResponse = Request.InputStream;
        StreamReader streamRead = new StreamReader(streamResponse, Encoding.UTF8);

        while ((line = streamRead.ReadLine()) != null)
        {
          jsonStr += line;
        }
        streamResponse.Close();
        streamRead.Close();

        result = jsonStr;
      }
      catch (Exception ex)
      {
        result = "msg-    (In)  :" + ex.Message;
      }
      Service service = new Service();
      //  AddCatagorys  ,       
      service.AddCatagorys(result);
      //   GetCatas  ,       
      List<Catagory> list = service.GetCatagories();
      //            ,          
      Catagory catagory = list[list.Count - 1];
      //  Json
      //return Json(catagory)

      //    ID,Content()   string  ,    int  string  
      return Content(catagory.ID.ToString());
    }
여 기 는 사실 두 사람 이 전화 하 는 것 과 맞 먹는다.네가 나 에 게 전 화 를 할 때 이치 대로 말 하면 다 시 는 다른 사람과 전화 하지 않 겠 지.
그래서 여기 서 Content(catagory.ID.ToString()를 반환 합 니 다.되 돌아 온 ID 를 콘 솔,즉 전송 자 에 게 우리 가 당신 이 전송 한 데 이 터 를 받 았 다 는 것 을 알 리 고 데이터베이스 에 저장 했다 는 뜻 입 니 다.
주:이 수필 은 참고 로 만 사용 할 수 있 고 작은 흠 도 많 습 니 다.가장 중요 한 것 은 코드 가 아니 라 논리 가 가장 중요 합 니 다.

좋은 웹페이지 즐겨찾기