Mercurial > libervia-web
diff libervia/pages/_browser/tmp_aio.py @ 1347:48e2a8b07c0b
browser: async version of bridge
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 05 Sep 2020 21:59:11 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libervia/pages/_browser/tmp_aio.py Sat Sep 05 21:59:11 2020 +0200 @@ -0,0 +1,26 @@ +from browser import window + +"""Q&D module to do ajax requests with data types currently unsupported by Brython""" +# FIXME: remove this module when official aio module allows to work with blobs + +window.eval(""" +var _tmp_ajax = function(method, url, format, data){ + return new Promise(function(resolve, reject){ + var xhr = new XMLHttpRequest() + xhr.open(method, url, true) + xhr.responseType = format + xhr.onreadystatechange = function(){ + if(this.readyState == 4){ + resolve(this) + } + } + if(data){ + xhr.send(data) + }else{ + xhr.send() + } + }) +} +""") + +ajax = window._tmp_ajax