6
我正在嘗試與球拍(原PLT方案)掛鉤URL調度。我看了一下教程和服務器文檔。我無法弄清楚如何將請求路由到相同的servlet。球拍URL調度
具體例子:
#lang scheme (require web-server/servlet) (require web-server/dispatch) (provide/contract (start (request? . -> . response/c))) (define (start request) (blog-dispatch request)) (define-values (blog-dispatch blog-url) (dispatch-rules (("") list-posts) (("posts" (string-arg)) review-post) (("archive" (integer-arg) (integer-arg)) review-archive) (else list-posts))) (define (list-posts req) `(list-posts)) (define (review-post req p) `(review-post ,p)) (define (review-archive req y m) `(review-archive ,y ,m)) (require web-server/servlet-env) (serve/servlet start #:launch-browser? #t #:quit? #f #:listen-ip #f #:port 8080 #:extra-files-paths (list (build-path "js") (build-path "css")) #:servlet-path "")
假設上面的代碼,localhost:8080/
進入一個網頁,上面寫着「列表的帖子」。去localhost:8080/posts/test
去一個球拍「文件未找到」頁面(我希望它去到一個頁面,說「審查後測試」)。
感覺就像我錯過了一些小而明顯的東西。任何人都可以給我一個提示嗎?
是啊。我錯過了servlet-regexp參數。正如我所懷疑的;一些小而明顯的東西。謝謝你幫助我。 – Inaimathi 2010-05-21 14:08:43
在OP中發佈完整的非工作程序。 – Inaimathi 2010-05-21 14:49:04