def callPostTweet(): redis_conn = Redis() q = Queue(connection=redis_conn) request.body = request.form if request.headers['content-type'] == 'application/json': request.body = get_json_multidict(request) username = request.body.get('username') text = request.body.get('text') postTweets_job = q.enqueue(postTweet, args=(username, text,)) q_hashtags = Queue('hashtags', connection=redis_conn) q_hashtags.enqueue(hashtagAnalysis) return jsonify({}), 202, {'Location': url_for('postTweet', job_id=postTweets_job.get_id())}
def _api_authentication(): """ Attempt API authentication on a per-request basis.""" secure_app_access = app.config.get('SECURE_APP_ACCESS', False) if not secure_app_access: grant_access_with_api_key(secure_app_access) # Handle forms request.body = request.form if (request.method == 'POST' and request.headers.get('Content-Type') == 'application/json' and request.data): try: request.body = get_json_multidict(request) except TypeError: abort(400)
def _api_authentication(): """ Attempt API authentication on a per-request basis.""" apikey = request.args.get('api_key', None) from flask import _request_ctx_stack if 'Authorization' in request.headers: apikey = request.headers.get('Authorization') if apikey: user = user_repo.get_by(api_key=apikey) if user: _request_ctx_stack.top.user = user # Handle forms request.body = request.form if (request.method == 'POST' and request.headers['Content-Type'] == 'application/json'): request.body = get_json_multidict(request)
def _api_authentication(): """ Attempt API authentication on a per-request basis.""" apikey = request.args.get('api_key', None) from flask import _request_ctx_stack if 'Authorization' in request.headers: apikey = request.headers.get('Authorization') if apikey: user = user_repo.get_by(api_key=apikey) if user: _request_ctx_stack.top.user = user # Handle forms request.body = request.form if (request.method == 'POST' and request.headers.get('Content-Type') == 'application/json' and request.data): try: request.body = get_json_multidict(request) except TypeError: abort(400)
def trade(): form = TradeForm(request.form) if request.method == 'POST': json_data = get_json_multidict(request) # Ignore CRSF as it was not in the spec, ideally should be true form = TradeForm(json_data, csrf_enabled=False) if form.validate(): if current_user.is_authenticated(): user = current_user.get_id() else: user = json_data['userId'] time = datetime.strptime(json_data['timePlaced'], '%d-%b-%y %H:%M:%S') trade = Trade(user, json_data['currencyFrom'], json_data['currencyTo'], json_data['amountSell'], json_data['amountBuy'], json_data['rate'], time, json_data['originatingCountry']) db.session.add(trade) # TODO: Handle integrity constraint here, sqlite doesn't enforce fk db.session.commit() return "Trade %s was a success." % trade else: # Data failed to validate abort(422) else: trades = Trade.query.all() return render_template('trade.html', form=form, trades=trades)
def process_request(self): #Extracting the information from the request object self.request.body = self.request.form if self.request.headers['content-type'] == 'application/json': self.request.body = get_json_multidict(self.request) body = self.request.body # Formatting it as a dictionary request_dict = {key: body[key] for key in body} dict_payload_uni = self.get_payload(request_dict) dict_payload = self.convert_dict_string(dict_payload_uni) rest_git = Github(os.environ['oauth_token']) print dict_payload #logging.info(dict_payload) if (self.method == PR_COMMENT): print "inside PR_COMMENT" self.respond_to_PR_comment(dict_payload, rest_git) elif (self.method == PR): print "inside PR" self.respond_to_PR(rest_git, dict_payload) elif (self.method == COMMIT_COMMENT): print "inside commit comment" self.respond_to_commit_comment(rest_git, dict_payload)
def resolve_request_body(): """Before every request, resolve `request.body` from either `request.form` or `request.get_json()`""" request.body = request.form if request.headers.get('content-type') == 'application/json': request.body = get_json_multidict(request)
def get_data(request): return get_json_multidict(request) if request.is_json else request.form