I don't understand why I can't access an established socket connection via my browser or telnet? I'm trying to build a simple socket-based webserver.
server.lsp
Code: Select all
#!/usr/bin/env newlisp
;; SET IP and PORT
(set 'ip "127.0.0.2")
(set 'port 8080)
;; BUILD UP SOCKET
(set 'connection (net-listen port ip "multi"))
(if connection 
	(println "LispIO webserver started on " ip ":" port)
    (println (net-error))
)
;; ENTER LOOP
(while (not (net-error))
	(set 'msg (net-receive-from connection 1024))
	;(println "->" msg)
	(set 'response [text]
	"HTTP/1.0 200 OK\r\n"
	"Server: LispIO\r\n"
	"Content-Type: text/html\r\n"
	"\r\n"
	[/text]
	)
	(net-send-to (nth 1 msg) (nth 2 msg) response connection)
	(println "Hello World")
)
(exit)
client.lsp
Code: Select all
#!/usr/bin/newlisp
(set 'socket (net-listen 8081 "" "multi"))
(if (not socket) (println (net-error)))
(while (not (net-error))
	(print "Enter something -> ")
	(net-send-to "localhost" 8080 (read-line) socket)
	(net-receive socket buff 255)
	(println "=> " buff)
)
Code: Select all
Enter something -> hello
=> 
	"HTTP/1.0 200 OK\r\n"
	"Server: LispIO\r\n"
	"Content-Type: text/html\r\n"
	"\r\n"
Thanks for help.
-Hilti