For some receipt inputs the callback gets invoked twice. Here's a little test script:
var fs = require('fs');
var IAPVerifier = require('iap_verifier');
var verifier = new IAPVerifier(process.env.ITUNES_SHARED_SECRET);
var receipt = fs.readFileSync('receipt').toString();
fs.writeFileSync('receipt', receipt);
verifier.verifyAutoRenewReceipt(receipt, true, function(valid, msg, data) {
console.log("CALLBACK:", valid, msg, data);
});
When I run it I see this output:
$ node test.js
CALLBACK: false error null
CALLBACK: false error [SyntaxError: Unexpected end of input]
The traceback for both callbacks is the same:
at node_modules/iap_verifier/lib/iap_verifier.js:193:20
at IncomingMessage.<anonymous> (node_modules/iap_verifier/lib/iap_verifier.js:249:22)
at IncomingMessage.emit (events.js:117:20)
at _stream_readable.js:943:16
at process._tickCallback (node.js:419:13)
For some receipt inputs the callback gets invoked twice. Here's a little test script:
When I run it I see this output:
The traceback for both callbacks is the same: