Tôi rất tò mò về việc sử dụng Lisp để củng cố dịch vụ web RESTful hiện đại, nhưng với nhiều biến thể và triển khai, thật khó để biết bắt đầu từ đâu.Dịch vụ web với Lisp
Tôi chắc chắn rằng có những người ngoài đó sử dụng Lisp cho các ứng dụng liên quan đến web (chỉ cần rà soát thông qua các câu hỏi ở đây trên SO cho thấy điều đó) nhưng những gì tôi muốn biết là là có bất kỳ triển khai Lisp nào phù hợp hơn dịch vụ web so với các dịch vụ khác? (hỗ trợ unicode gốc chẳng hạn, các thư viện có liên quan đến web, hiệu suất, v.v.)
Tôi không tìm kiếm các khung "web hack" hoặc khung web unicode. Tôi chủ yếu quan tâm đến những gì bạn nhận được ra khỏi hộp. Tôi đã không liên kết bản thân với bất kỳ Lisp phái sinh hoặc thực hiện, mặc dù tôi có một số kinh nghiệm nhỏ với Common Lisp trên CLISP (một máy tính đa thức chung như một phần của một khóa học khoa học máy tính đại học). Thật tuyệt khi biết nếu có những lựa chọn đặc biệt tốt cho vấn đề này, đặc biệt là từ những người đã thực sự sử dụng Lisp theo cách này.
Tôi đã liếc nhanh qua Hunchentoot, nhưng có vẻ như nó hỗ trợ một số động từ hạn chế, điều này có đúng không? (GET và POST) - Tôi cần thứ gì đó linh hoạt hơn thế. Truy cập vào yêu cầu http và tiêu đề phản hồi thô là khá quan trọng trong dịch vụ web. Clojure/Noir dường như cung cấp truy cập như vậy. Tôi nghĩ rằng Racket cũng có thể truy cập các tiêu đề thô, nhưng nó chắc chắn sẽ đòi hỏi nhiều hơn một cái nhìn nhanh chóng để đánh giá bản chất của Racket. Có lẽ một số người ủng hộ Racket sẽ để lại một số ý kiến. –
@MattEsch Với Hunchentoot, bạn có thể truy cập phương thức yêu cầu bằng cách sử dụng hàm 'request-method *'. Ngay cả 'define-easy-handler' cũng không quan tâm nhiều đến động từ - bạn có thể thực hiện yêu cầu' CASTMAGIC' nếu bạn muốn, và nó sẽ hoạt động. :) (Hãy thử viết một trình xử lý đơn giản trả về chỉ '(ký hiệu-tên (hunchentoot: request-method *))'.Với Noir, có hỗ trợ trực tiếp cho các động từ HTTP chuẩn ('GET',' POST', 'PUT',' DELETE', 'HEAD') trong cơ chế gửi. Cả Hunchentoot và Noir đều cho phép bạn truy cập các tiêu đề yêu cầu HTTP. –
Cảm ơn bạn đã làm rõ. Tôi đã chỉ bối rối là tại sao các tài liệu đã làm cho một điểm của các động từ cụ thể GET và POST (giống như nó là một số loại mới lạ). Cám ơn giải thích rõ ràng. Tôi sẽ đi với Hunchentoot và xem những gì tôi có thể nghĩ ra. Tôi sẽ để câu hỏi mở ngay bây giờ chỉ để xem nó có trả lời các câu trả lời khác không. –