quickstarts/pub_sub/python/http/order-processor/app.py

31 lines
829 B
Python

from flask import Flask, request, jsonify
import json
import os
app = Flask(__name__)
app_port = os.getenv('APP_PORT', '6001')
# Register Dapr pub/sub subscriptions
@app.route('/dapr/subscribe', methods=['GET'])
def subscribe():
subscriptions = [{
'pubsubname': 'orderpubsub',
'topic': 'orders',
'route': 'orders'
}]
print('Dapr pub/sub is subscribed to: ' + json.dumps(subscriptions))
return jsonify(subscriptions)
# Dapr subscription in /dapr/subscribe sets up this route
@app.route('/orders', methods=['POST'])
def orders_subscriber():
event_orderid = request.json['data']['orderId']
print('Subscriber received : ' + json.dumps(event_orderid), flush=True)
return json.dumps({'success': True}), 200, {
'ContentType': 'application/json'}
app.run(port=app_port)