POST 요청

JumpKick.HttpLib — POST 요청

1. 사용 가능한 요청 메서드 개요(Http 정적 클래스)

// 모든 메서드는 RequestBuilder 플루언트 객체를 반환합니다
Http.Get(url);
Http.Post(url);
Http.Put(url);
Http.Delete(url);
Http.Patch(url);
Http.Head(url);Code language: JavaScript (javascript)

통합 체이닝 구문:요청메서드().파라미터설정().OnSuccess().OnFail().Go();

2. POST의 두 가지 파라미터 전달 방식

  1. .Form():폼 제출 Content‑Type: application/x‑www‑form‑urlencoded(웹 폼 형식)
  2. .Body():원문 페이로드,JSON / XML / SOAP 커스텀 메시지에 사용

3. 예시1:Form 폼 전송

using System;
using JumpKick.HttpLib;

class Program
{
    static void Main(string[] args)
    {
        Http.Post("https://httpbin.org/post")
        .Form(new
        {
            name = "James",
            username = "j6mes"
        })
        .OnSuccess(result =>
        {
            Console.WriteLine("==== POST 폼 요청 성공 ====");
            Console.WriteLine(result);
        })
        .OnFail(webexception =>
        {
            Console.WriteLine("==== 요청 예외 발생 ====");
            Console.WriteLine(webexception.Message);
        })
        .Go();

        Console.ReadKey();
    }
}Code language: JavaScript (javascript)

4. 예시2:Body로 JSON 데이터 전송

using System;
using JumpKick.HttpLib;

class Program
{
    static void Main(string[] args)
    {
        string jsonStr = "{\"account\":\"test\",\"pwd\":\"123456\"}";

        Http.Post("https://httpbin.org/post")
        .Body(jsonStr, "application/json") // 페이로드 내용 + 미디어 타입 지정
        .OnSuccess(result =>
        {
            Console.WriteLine("==== POST‑JSON 요청 성공 ====");
            Console.WriteLine(result);
        })
        .OnFail(webexception =>
        {
            Console.WriteLine("==== 요청 예외 발생 ====");
            Console.WriteLine(webexception.Message);
        })
        .Go();

        Console.ReadKey();
    }
}Code language: JavaScript (javascript)

5. 예시3:POST 실패 케이스 처리

POST를 지원하지 않는 주소를 호출해 405 오류를 포착하고 OnFail 동작을 확인합니다

using System;
using JumpKick.HttpLib;

class Program
{
    static void Main(string[] args)
    {
        // httpbin.org/get 은 GET만 허용하며 POST 호출 시 405가 반환됩니다
        Http.Post("https://httpbin.org/get")
        .Form(new
        {
            test = "demo"
        })
        .OnSuccess(result =>
        {
            Console.WriteLine("==== 요청 성공 ====");
            Console.WriteLine(result);
        })
        .OnFail(webexception =>
        {
            Console.WriteLine("==== 요청 예외(405 포착 완료) ====");
            Console.WriteLine(webexception.Message);
        })
        .Go();

        Console.ReadKey();
    }
}Code language: JavaScript (javascript)

6. 자주 발생하는 오류 안내

오류:원격 서버에서 오류를 반환했습니다: (405) 허용되지 않은 메서드입니다.

원인:대상 API가GET만 수락하고 POST를 거부합니다.


해결 방안:

  1. POST 지원 테스트 엔드포인트로 교체(권장 httpbin.org/post)
  2. API에서 허용하는 HTTP 메서드 확인

7. GET / POST 핵심 비교 정리

방식함수파라미터 전달 형식사용 시나리오
GETHttp.Get()URL 쿼리 파라미터데이터 조회
POST 폼Http.Post().Form()폼 키‑값 쌍웹 로그인, 폼 제출
POST JSONHttp.Post().Body()원시 문자열 페이로드프론트‑백엔드 API 연동

POST 요청

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다