diff --git a/js/testing/test-get-async.html b/js/testing/test-get-async.html
new file mode 100644
index 0000000..fc7d84a
--- /dev/null
+++ b/js/testing/test-get-async.html
@@ -0,0 +1,56 @@
+<?xml version = "1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"DTD/xhtml1-strict.dtd">
+<html xmlns = "http://www.w3.org/1999/xhtml">
+<meta charset="UTF-8">
+
+<head>
+	<title>NDN Get via WebSocket</title>
+	
+	<script type="text/javascript" src="../Helper.js"></script>
+
+	<script type="text/javascript">
+		var ndn = new NDN();
+        ndn.connectWebSocket();
+        
+        var AsyncGetClosure = function AsyncGetClosure() {
+        	// Inherit from Closure.
+			Closure.call(this);
+		};
+		
+		AsyncGetClosure.prototype.upcall = function(kind, upcallInfo) {
+			if (kind == Closure.UPCALL_FINAL) {
+				// Do nothing.
+			} else if (kind == Closure.UPCALL_CONTENT) {
+				console.log("Closure.upcall() executed.");
+				var content = upcallInfo.contentObject;
+				nameStr = escape(content.name.getName());
+				console.log("In callback, nameStr: " + nameStr);
+				console.log("In callback, content: ");
+				console.log(content);
+				document.getElementById('content').innerHTML = contentObjectToHtml(content);
+			}
+			return Closure.RESULT_OK;
+		};
+		
+		
+		function run() {
+			ndn.expressInterestWS(document.getElementById('interest').value, new AsyncGetClosure(), null);
+		}
+		
+	</script>
+	
+</head>
+<body >
+
+	<form>
+		Please Enter an Interest:<br />
+		<input id="interest" type="text" name="INTEREST" size="50" value="/%C1.M.S.localhost/%C1.M.SRV/ccnd/KEY" /> 
+	</form>
+
+	<button onclick="run()">Fetch Content</button>
+	
+	<p id="content">Content: <br/></p>
+
+</body>
+</html>
