From 794581e872504534f3e701895ebe897297a5b84c Mon Sep 17 00:00:00 2001
From: Henry
Date: Thu, 27 Jun 2024 10:28:12 +0200
Subject: [PATCH] update wasm wrapper APIs
- change newKeyRequest to return a promise instead
- fix newUpdater
- now takes 3 arguments
- keyName, zone, dohHostname
---
flake.lock | 6 +--
golang/wasm/wasm_exec.html | 96 ++++++++------------------------------
golang/wasm/wrapper_js.go | 89 ++++++++++++++++++++---------------
3 files changed, 74 insertions(+), 117 deletions(-)
diff --git a/flake.lock b/flake.lock
index 5087bbd..77bf2b8 100644
--- a/flake.lock
+++ b/flake.lock
@@ -20,11 +20,11 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1715787315,
- "narHash": "sha256-cYApT0NXJfqBkKcci7D9Kr4CBYZKOQKDYA23q8XNuWg=",
+ "lastModified": 1719254875,
+ "narHash": "sha256-ECni+IkwXjusHsm9Sexdtq8weAq/yUyt1TWIemXt3Ko=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "33d1e753c82ffc557b4a585c77de43d4c922ebb5",
+ "rev": "2893f56de08021cffd9b6b6dfc70fd9ccd51eb60",
"type": "github"
},
"original": {
diff --git a/golang/wasm/wasm_exec.html b/golang/wasm/wasm_exec.html
index bc465e0..32acf83 100644
--- a/golang/wasm/wasm_exec.html
+++ b/golang/wasm/wasm_exec.html
@@ -107,58 +107,31 @@
return
}
- const keyReq = goFuncs["newKeyRequest"](newName)
+ const newKeyReq = goFuncs["newKeyRequest"]
- let answer = null
- while (keyReq.next()) {
- const query = keyReq.do(answer)
- if (query == null) break
- console.log(query)
-
- const bodyBuf = _base64ToArrayBuffer(query)
-
- const qryUrl = new URL(`https://doh.zenr.io/dns-query`)
- const resp = await fetch(qryUrl, {
- method: "POST",
- headers: {
- "Content-Type": "application/dns-message"
- },
- body: bodyBuf
- })
-
-
- const data = await resp.arrayBuffer()
- answer = _arrayBufferToBase64(data)
- console.log(answer)
- }
-
- if (keyReq.err() !== null) {
- console.error("requestKey failed:"+keyReq.err())
- throw new Error(keyReq.err())
- }
-
- console.log("done!")
+ newKeyReq(newName, "doh.zenr.io").then(() => {
+ console.log("key requested!")
+ }).catch(err => alert(err.message))
}
- function listKeys() {
- const div = document.getElementById("existing-keys")
- if (div.children.length > 0) {
- div.removeChild(div.children[0])
- }
+ function listKeys() {
+ const div = document.getElementById("existing-keys")
+ if (div.children.length > 0) {
+ div.removeChild(div.children[0])
+ }
- const ul = document.createElement("ul")
+ const ul = document.createElement("ul")
- const list = window.goFuncs.listKeys
- for (const k of list()) {
- const li = document.createElement("li")
- li.innerHTML = k
- ul.appendChild(li)
- }
- div.appendChild(ul)
-
- return
- }
+ const list = window.goFuncs.listKeys
+ for (const k of list()) {
+ const li = document.createElement("li")
+ li.innerHTML = k
+ ul.appendChild(li)
+ }
+ div.appendChild(ul)
+ return
+ }
@@ -175,36 +148,5 @@ Request
-
- Previous Go DNS Query Demo
-
-
-
-
-
-
-
-
- Query
-
-
-
-
-
- Update
-
-
-
-
-
- Reply
-
-
-
-
-
- Parsed
-