I am trying to do a receipt verification for iOS. So I receive the purchase receipt no problem. I have to Base64 encode it and create an Object to send to my server with the base64encoded receipt as the "receipt-data".
No problem encoding the receipt, or creating the object, but when I do and try to stringify it, I get no value in the key value pair?
Here is the code
var encodedReceipt = Ti.Utils.base64encode(e.purchase.receipt).toString(); Ti.API.info(encodedReceipt); var receiptObject = {}; receiptObject["receipt-data"] = encodedReceipt; Ti.API.info(JSON.stringify(receiptObject));Here is the console from the device in Xcode
Sep 20 20:30:32 4S-Iphone-Leo GoPhrazy[1377] <Warning>: [INFO] ewoJInNpZ25hdHVyZSIgPSAiQXFKbk5VeEROQXBlTlJaYXNrcWg0SlRKVWJXTnVBOWlPbi8v ck9kMHAwQUNrdXkyWGpnVVNDdGh5bGcwK0xRNHdIbzNLNFJqeEhTbjR2NzNHUjM0QS9UamFN TkM1S3VXNTMrbXVsVTRJeVZRRjByZ3lFcHRiSTZvVHBxa05hZHlJNWFTS3BTT0JpYVR0WU1k aUJlV3kvc2Q0K0plZHBQM3NRclpxcDcydXluU0FBQURWekNDQTFNd2dnSTdvQU1DQVFJQ0NC dXA0K1BBaG0vTE1BMEdDU3FHU0liM0RRRUJCUVVBTUg4eEN6QUpCZ05WQkFZVEFsVlRNUk13 RVFZRFZRUUtEQXBCY0hCc1pTQkpibU11TVNZd0pBWURWUVFMREIxQmNIQnNaU0JEWlhKMGFX WnBZMkYwYVc5dUlFRjFkR2h2Y21sMGVURXpNREVHQTFVRUF3d3FRWEJ3YkdVZ2FWUjFibVZ6 SUZOMGIzSmxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1CNFhEVEUwTURZd056 QXdNREl5TVZvWERURTJNRFV4T0RFNE16RXpNRm93WkRFak1DRUdBMVVFQXd3YVVIVnlZMmho YzJWU1pXTmxhWEIwUTJWeWRHbG1hV05oZEdVeEd6QVpCZ05WQkFzTUVrRndjR3hsSUdsVWRX NWxjeUJUZEc5eVpURVRNQkVHQTFVRUNnd0tRWEJ3YkdVZ1NXNWpMakVMTUFrR0ExVUVCaE1D VlZNd2daOHdEUVlKS29aSWh2Y05BUUVCQlFBRGdZMEFNSUdKQW9HQkFNbVRFdUxnamltTHdS Snh5MW9FZjBlc1VORFZFSWU2d0Rzbm5hbDE0aE5CdDF2MTk1WDZuOTNZTzdnaTNvclBTdXg5 RDU1NFNrTXArU2F5Zzg0bFRjMzYyVXRtWUxwV25iMzRucXlHeDlLQlZUeTVPR1Y0bGpFMU93 QytvVG5STStRTFJDbWVOeE1iUFpoUzQ3VCtlWnRERWhWQjl1c2szK0pNMkNvZ2Z3bzdBZ01C QUFHamNqQndNQjBHQTFVZERnUVdCQlNKYUVlTnVxOURmNlpmTjY4RmUrSTJ1MjJzc0RBTUJn TlZIUk1CQWY4RUFqQUFNQjhHQTFVZEl3UVlNQmFBRkRZZDZPS2RndElCR0xVeWF3N1hRd3VS V0VNNk1BNEdBMVVkRHdFQi93UUVBd0lIZ0RBUUJnb3Foa2lHOTJOa0JnVUJCQUlGQURBTkJn a3Foa2lHOXcwQkFRVUZBQU9DQVFFQWVhSlYyVTUxcnhmY3FBQWU1QzIvZkVXOEtVbDRpTzRs TXV0YTdONlh6UDFwWkl6MU5ra0N0SUl3ZXlOajVVUllISytIalJLU1U5UkxndU5sMG5rZnhx T2JpTWNrd1J1ZEtTcTY5Tkluclp5Q0Q2NlI0Szc3bmI5bE1UQUJTU1lsc0t0OG9OdGxoZ1Iv MWtqU1NSUWNIa3RzRGNTaVFHS01ka1NscDRBeVhmN3ZuSFBCZTR5Q3dZVjJQcFNOMDRrYm9p SjNwQmx4c0d3Vi9abEwyNk0ydWVZSEtZQ3VYaGRxRnd4VmdtNTJoM29lSk9PdC92WTRFY1Fx N2VxSG02bTAzWjliN1BSellNMktHWEhEbU9Nazd2RHBlTVZsTERQU0dZejErVTNzRHhKemVi U3BiYUptVDdpbXpVS2ZnZ0VZN3h4ZjRjemZIMHlqNXdOelNHVE92UT09IjsKCSJwdXJjaGFz ZS1pbmZvIiA9ICJld29KSW05eWFXZHBibUZzTFhCMWNtTm9ZWE5sTFdSaGRHVXRjSE4wSWlB OUlDSXlNREUwTFRBNUxUSXdJREV4T2pNd09qTXhJRUZ0WlhKcFkyRXZURzl6WDBGdVoyVnNa WE1pT3dvSkluVnVhWEYxWlMxcFpHVnVkR2xtYVdWeUlpQTlJQ0l6WkRrMU1qTTFORFZrWVdW aE1HUmtOelppTVRaaFpEazVaVGhrTlRZeVlUazBNek13Tldaa0lqc0tDU0p2Y21sbmFXNWhi QzEwY21GdWMyRmpkR2x2YmkxcFpDSWdQU0FpTVRBd01EQXdNREV5TkRVNE1UZ3hNQ0k3Q2dr aVluWnljeUlnUFNBaU1TNHhMakl1TVRReE1USXpOelk0TVRRM05TSTdDZ2tpZEhKaGJuTmhZ M1JwYjI0dGFXUWlJRDBnSWpFd01EQXdNREF4TWpRMU9ERTRNVEFpT3dvSkluRjFZVzUwYVhS NUlpQTlJQ0l4SWpzS0NTSnZjbWxuYVc1aGJDMXdkWEpqYUdGelpTMWtZWFJsTFcxeklpQTlJ Q0l4TkRFeE1qTTNPRE14TXpNeklqc0tDU0oxYm1seGRXVXRkbVZ1Wkc5eUxXbGtaVzUwYVda cFpYSWlJRDBnSWtFeE5UZEdRelF3TFVJMlJVVXROREkyUWkxQk1qUXpMVFl4TjBaR1FUWkNS RU5CTWlJN0Nna2ljSEp2WkhWamRDMXBaQ0lnUFNBaWMydHBjRjh4SWpzS0NTSnBkR1Z0TFds a0lpQTlJQ0k1TURNMk9USTROVEFpT3dvSkltSnBaQ0lnUFNBaVkyOXRMbTF2ZW5waGNtVnNi Rzh1WjI5d2FISmhlbmtpT3dvSkluQjFjbU5vWVhObExXUmhkR1V0YlhNaUlEMGdJakUwTVRF eU16YzRNekV6TXpNaU93b0pJbkIxY21Ob1lYTmxMV1JoZEdVaUlEMGdJakl3TVRRdE1Ea3RN akFnTVRnNk16QTZNekVnUlhSakwwZE5WQ0k3Q2draWNIVnlZMmhoYzJVdFpHRjBaUzF3YzNR aUlEMGdJakl3TVRRdE1Ea3RNakFnTVRFNk16QTZNekVnUVcxbGNtbGpZUzlNYjNOZlFXNW5a V3hsY3lJN0Nna2liM0pwWjJsdVlXd3RjSFZ5WTJoaGMyVXRaR0YwWlNJZ1BTQWlNakF4TkMw d09TMHlNQ0F4T0Rvek1Eb3pNU0JGZEdNdlIwMVVJanNLZlE9PSI7CgkiZW52aXJvbm1lbnQi ID0gIlNhbmRib3giOwoJInBvZCIgPSAiMTAwIjsKCSJzaWduaW5nLXN0YXR1cyIgPSAiMCI7 Cn0= Sep 20 20:30:32 4S-Iphone-Leo GoPhrazy[1377] <Warning>: [INFO] {"receipt-data":{}}See the last line where there is empty brakets? The JSON.stringify can't seem to stringify the base64encoded string.
As you can see also strangely the base64code string comes out with these spaces. It's really weird.
I can't seem to figure this out.
Thanks for your help.