Event horizon
-
Fsharp.Data (F# Data) Json parsing exampleF# 2016. 10. 20. 00:50
#1. set of properties { "a" : "apple", "b" : "banana", "c" : "cocoa" } open FSharp.Data open FSharp.Data.JsonExtensions [] let main argv = let json_txt= """{"a":"apple","b":"banana","c":"cocoa"}""" JsonValue.Parse(json_txt).Properties |> Array.iter(fun (key,value) -> printfn "%s:%s" key (value.AsString())) 0 // return an integer exit code #2. array of values ["apple","banana","cocoa"] open FShar..
-
git 일부 디렉토리만 clone 받기 (sparse checkout)ETC 2016. 10. 14. 20:18
svn의 경우 checkout 시에 세부 디렉토리를 바로 지정 가능하기 때문에 이 작업이 쉬우나 git의 경우 몇가지 작업이 필요하다.(영어로는 sparse checkout이라 한다.) 1. (특정 디렉토리만 받게될) 디렉토리 초기화mkdir cd git initgit remote add -f origin 위 명령을 차례대로 실행하면 빈 디렉토리를 생성하고 모든 오브젝트를 가져오지만 실제로 모든 파일을 checkout 하지는 않는다. 2. 설정 변경git config core.sparseCheckout true부분 체크아웃 설정을 true로 설정해준다. 3. 디렉토리 추가echo "some/dir/" >> .git/info/sparse-checkout체크아웃 받을 세부 디렉토리를 설정에 추가한다.(이 ..
-
Android 인앱 결제 PHP 영수증 체크 (2016년 8월 기준)ETC 2016. 8. 31. 14:15
1. Client app 에서 결제처리를 완료 하면 json 형식으로 된 영수증을 받게 된다. 2. 서버측 PHP 영수증 검증 코드 작성 $s_recipt 에는 구글로 부터 받은 json 문자열 전체를 넣어주고, $s_signiture는 영수증 json 내용중 signiture 항목의 값을 추출해 넣어준다. //the app rsa key in google developer console define("APP_RSA_KEY","MIIBI.....ABCDE"); function CheckReceipt($s_recipt, $s_signiture) { //open ssl verification $s_pub_key = "-----BEGIN PUBLIC KEY-----\n".chunk_split(APP_RSA_K..
-
IOS 인앱 결제 PHP 영수증 체크 (2016년 8월 기준)ETC 2016. 8. 31. 13:11
1. Client app 에서 결제처리를 완료 하면 json 형식으로 된 영수증을 받게 된다. 검증에는 이 내용중 payload 의 값만 사용한다. payload 는 이와같이 생겼다.MIIT0QYJKoZIhvcNAQcCoIITwjCCE74CAQExCzAJB .... (중략) .... 인자가 상당히 길기때문에 반드시 POST 방식으로 전달해야한다. 2. 서버측 PHP 영수증 검증 코드 작성 define("VERIFY_URL", "https://sandbox.itunes.apple.com/verifyReceipt"); //개발 테스트시 //define("VERIFY_URL", "https://buy.itunes.apple.com/verifyReceipt"); //실제 서비스시 function CheckRec..