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