1
我試圖在接收數據的球拍上創建一個網絡服務器,並且用它收到的數據來做。爲什麼Racket上的網絡服務器不能多次接收數據?
我遇到的問題是,如果客戶端重新運行(單擊運行按鈕),服務器只接收來自客戶端的內容。我真正想要做的是能夠在客戶端控制檯中鍵入(例如)(寫入「test」)多次,並且服務器可以接收它並在服務器文件中的函數中處理數據。
這是我嘗試使其工作的最新嘗試。我正在使用echo-server代碼。但仍然沒有運氣。
(define listener (tcp-listen 3961))
(define (echo-server)
(define-values (in out) (tcp-accept listener))
(thread (lambda()
(print (read in))
(close-output-port out)))
(echo-server))
(echo-server)
客戶:
(define-values (in out)
(tcp-connect "localhost" 3961))
(define sendtoserver
(lambda()
(write "test" out)
(flush-output out)))
太棒了!非常感謝! –