Li

Delete

Are you sure you want to delete this?

EasyPayModel


Date
20211008
Target
C_013
Title
toss C# String.Split 으로 구매자 요청 결제 request 주소 생성
Contents
{"code":0,"status":200,"payToken":"yANjTY59loeiAAAqgnPwf2","checkoutPage":"https://pay.toss.im/payfront/auth?payToken=yANjTY59loeiAAAqgnPwf2"} 나누기 result = "{"code":0,"status":200,"payToken":"yANjTY59loeiAAAqgnPwf2","checkoutPage":"https://pay.toss.im/payfront/auth?payToken=yANjTY59loeiAAAqgnPwf2"} " string[] results = result.Split(','); results[2]는 다음과 같다. "payToken":"yANjTY59loeiAAAqgnPwf2" string payToken = results[2].Substring(12, 22) 라고 하면 yANjTY59loeiAAAqgnPwf2 가 추출된다. 하지만 payToken이 22 개의 난수이어야만 한다. 만약 이 난수가 22개를 넘어선다면 에러가 발생할 것이다. var result = streamReader.ReadToEnd(); // 결제 생성으로 넘어온 값이 result에 저장된다. HttpContext.Current.Response.Write(result); // 결제 생성 코드.성공!!! 변수 result를 분해해서 asp에서처럼 리다이렉트 하면 된다. string[] results = result.Split(','); HttpContext.Current.Response.Write(results[2]); // "payToken":"yANjTY59loeiAAAqgnPwf2" 를 가져온다. var result2 = results[2]; // 이것을 result2에 저장하고 string[] results2 = result2.Split(':'); // result2를 : 기준으로 Split한다. var result3 = results2[1]; // "yANjTY59loeiAAAqgnPwf2" 를 가져온다. var result4 = result3.Trim('"'); // quoatation mark remove method 이 result4 가 "yANjTY59loeiAAAqgnPwf2 이다 string payToken = result4 ; // payToken string 변수에 result4를 대입한다. HttpContext.Current.Response.Write(payToken); Response.Redirect("https://pay.toss.im/payfront/auth?payToken=" + payToken); // 구매자에게 넘어가는 URL