I can't seem to get my app to accept POST requests from a different domain. I'm trying to make an PayPal IPN handler in my app.
When a user clicks the "Subscribe" button on my page, PayPal sends an IPN (a POST), to my IPN handler.
I can see in my AppEngine logs that a POST request is received, but it is empty (e.g. no arguments, my logging.debug messages aren't showing up in the logs, etc.)
So I test my handler by making a POST to it within my app, and the handler works as expected.
I'm assuming it's a security feature to not accept POSTs from outside sources? If so, how do I make my app accept POSTs from PayPal?
Here's what my handler looks like at the moment (it's just for testing):
class BaseHandler(tornadotoad.mixin.RequestHandler, tornado.web.RequestHandler):
# ...
class IPNHandler(BaseHandler):
def post(self):
if is_ajax(self.request):
logging.info('AJAX')
logging.info(self.request.arguments)
self.write("This is the IPN Handler\n'")
self.write(self.request.arguments)
return
Thanks in advance.
P.S. I'm using PayPal's Sandbox Test Tool to send the IPN