From 9476242a878def6ce45da10f0c28b85172adbbb6 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Sat, 24 Aug 2019 19:43:30 +0200 Subject: etag --- talerblog/blog/blog.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/talerblog/blog/blog.py b/talerblog/blog/blog.py index 5340d56..47b7074 100644 --- a/talerblog/blog/blog.py +++ b/talerblog/blog/blog.py @@ -328,13 +328,20 @@ def article(article_name, data=None): # Redirect the browser to a page where the wallet can # run the payment protocol. contract_url = pay_status["contract_url"] + taler_pay_uri = "talerpay:" + urllib.parse.quote_plus(contract_url) + ";" + session_id + req_etag = request.headers.get("If-None-Match") + resp_etag = f"\"{taler_pay_uri}\"" + if req_etag == resp_etag: + resp = flask.Response(status=304) + return resp + headers = { "Taler-Contract-Url": urllib.parse.quote(contract_url), "Taler-Session-Url": urllib.parse.quote(session_id), "Taler-Resource-Url": urllib.parse.quote(resource_url), + "ETag": resp_etag, } - taler_pay_uri = "talerpay:" + urllib.parse.quote_plus(contract_url) + ";" + session_id qrcode_svg = get_qrcode_svg(taler_pay_uri) content = flask.render_template("templates/request_payment.html", article_name=article_name, -- cgit v1.2.3