diff options
author | Florian Dold <florian.dold@gmail.com> | 2019-08-24 19:43:30 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2019-08-24 19:44:04 +0200 |
commit | 9476242a878def6ce45da10f0c28b85172adbbb6 (patch) | |
tree | 4524d7813797760c062e825536d66e80fe2407bb /talerblog/blog/blog.py | |
parent | 408caef21673f826db07b6aded3d80d75a57ca99 (diff) | |
download | blog-9476242a878def6ce45da10f0c28b85172adbbb6.tar.gz blog-9476242a878def6ce45da10f0c28b85172adbbb6.tar.bz2 blog-9476242a878def6ce45da10f0c28b85172adbbb6.zip |
etag
Diffstat (limited to 'talerblog/blog/blog.py')
-rw-r--r-- | talerblog/blog/blog.py | 9 |
1 files changed, 8 insertions, 1 deletions
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, |