AppleReceiptVerifier.ReceiptManager.ValidateReceipt C# (CSharp) Method

ValidateReceipt() public method

Validate Receipt
public ValidateReceipt ( Uri postUri, string receiptData, string password = null ) : Response
postUri System.Uri Uri to post receipt data to
receiptData string receipt data from apple
password string Your app’s shared secret (a hexadecimal string). Only used for receipts that contain auto-renewable subscriptions.
return AppleReceiptVerifier.Models.Response
        public Response ValidateReceipt(Uri postUri, string receiptData, string password = null)
        {
            try
            {
                string receipt64 = Convert.ToBase64String(System.Text.Encoding.ASCII.GetBytes(receiptData));

                Dictionary<string, string> postObject = new Dictionary<string, string>();
                postObject.Add("receipt-data", receipt64);

                if (!string.IsNullOrEmpty(password))
                {
                    postObject.Add("password", password);
                }

                string json = JsonConvert.SerializeObject(postObject);

                var rawResponse = this.appleHttpRequest.GetResponse(postUri, json);
                var serializedResponse = JsonConvert.DeserializeObject<Response>(rawResponse);
                if (serializedResponse != null)
                {
                    serializedResponse.RawResponse = rawResponse;
                    return serializedResponse;
                }
            }
            catch
            {
            }

            return new Response() { Status = 1 };
        }