]> code.delx.au - gnu-emacs-elpa/blobdiff - packages/web-server/examples/006-basic-authentication.el
Add 'packages/web-server/' from commit 'd0b6ae9df6014db2195da0081dc97cc8246f1fda'
[gnu-emacs-elpa] / packages / web-server / examples / 006-basic-authentication.el
diff --git a/packages/web-server/examples/006-basic-authentication.el b/packages/web-server/examples/006-basic-authentication.el
new file mode 100644 (file)
index 0000000..61d1d4b
--- /dev/null
@@ -0,0 +1,12 @@
+;;; basic-authentication.el --- basic authentication
+(lexical-let ((users '(("foo" . "bar")
+                       ("baz" . "qux"))))
+  (ws-start
+   (ws-with-authentication
+    (lambda (request)
+      (with-slots (process headers) request
+        (let ((user (caddr (assoc :AUTHORIZATION headers))))
+          (ws-response-header process 200 '("Content-type" . "text/plain"))
+          (process-send-string process (format "welcome %s" user)))))
+    users)
+   9006))