verifying iOS in app purchase receipt with C#

后端 未结 4 885
误落风尘
误落风尘 2021-01-31 21:31

I am verifying my ios in app purchase receipt on my server using C# web service

I got receipt as string by doing below in Xcode:



        
4条回答
  •  野性不改
    2021-01-31 22:17

    I got solution

    The final code that works for me is:

     public string PurchaseItem(string receiptData)
    {
        string returnmessage = "";
        try
        {
           // var json = "{ 'receipt-data': '" + receiptData + "'}";
    
            var json = new JObject(new JProperty("receipt-data", receiptData)).ToString();
    
            ASCIIEncoding ascii = new ASCIIEncoding();
            byte[] postBytes = Encoding.UTF8.GetBytes(json);
    
          //  HttpWebRequest request;
            var request = System.Net.HttpWebRequest.Create("https://sandbox.itunes.apple.com/verifyReceipt");
            request.Method = "POST";
            request.ContentType = "application/json";
            request.ContentLength = postBytes.Length;
    
            //Stream postStream = request.GetRequestStream();
            //postStream.Write(postBytes, 0, postBytes.Length);
            //postStream.Close();
    
            using (var stream = request.GetRequestStream())
            {
                stream.Write(postBytes, 0, postBytes.Length);
                stream.Flush();
            }
    
          //  var sendresponse = (HttpWebResponse)request.GetResponse();
    
            var sendresponse = request.GetResponse();
    
            string sendresponsetext = "";
            using (var streamReader = new StreamReader(sendresponse.GetResponseStream()))
            {
                sendresponsetext = streamReader.ReadToEnd().Trim();
            }
            returnmessage = sendresponsetext;
    
        }
        catch (Exception ex)
        {
            ex.Message.ToString();
        }
        return returnmessage;
    

    Spending two and half days just to change a method. Thanks GOD.

提交回复
热议问题