Show details about page-proxy http errors
This commit is contained in:
		
							parent
							
								
									e0e53cc07b
								
							
						
					
					
						commit
						3f1aeb8414
					
				
					 2 changed files with 11 additions and 9 deletions
				
			
		| 
						 | 
					@ -8,7 +8,8 @@
 | 
				
			||||||
         net/url
 | 
					         net/url
 | 
				
			||||||
         web-server/http
 | 
					         web-server/http
 | 
				
			||||||
         (only-in web-server/dispatchers/dispatch next-dispatcher)
 | 
					         (only-in web-server/dispatchers/dispatch next-dispatcher)
 | 
				
			||||||
         "url-utils.rkt")
 | 
					         "url-utils.rkt"
 | 
				
			||||||
 | 
					         "xexpr-utils.rkt")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(provide
 | 
					(provide
 | 
				
			||||||
 page-proxy)
 | 
					 page-proxy)
 | 
				
			||||||
| 
						 | 
					@ -17,11 +18,12 @@
 | 
				
			||||||
  (match (dict-ref (url-query (request-uri req)) 'dest #f)
 | 
					  (match (dict-ref (url-query (request-uri req)) 'dest #f)
 | 
				
			||||||
    [(? string? dest)
 | 
					    [(? string? dest)
 | 
				
			||||||
     (if (is-fandom-url? dest)
 | 
					     (if (is-fandom-url? dest)
 | 
				
			||||||
         (let ([dest-r (easy:get dest #:stream? #t)])
 | 
					         (response-handler
 | 
				
			||||||
           (response/output
 | 
					          (let ([dest-r (easy:get dest #:stream? #t)])
 | 
				
			||||||
            #:code (easy:response-status-code dest-r)
 | 
					            (response/output
 | 
				
			||||||
            #:mime-type (easy:response-headers-ref dest-r 'content-type)
 | 
					             #:code (easy:response-status-code dest-r)
 | 
				
			||||||
            (λ (out)
 | 
					             #:mime-type (easy:response-headers-ref dest-r 'content-type)
 | 
				
			||||||
              (copy-port (easy:response-output dest-r) out))))
 | 
					             (λ (out)
 | 
				
			||||||
 | 
					               (copy-port (easy:response-output dest-r) out)))))
 | 
				
			||||||
         (next-dispatcher))]
 | 
					         (next-dispatcher))]
 | 
				
			||||||
    [#f (next-dispatcher)]))
 | 
					    [#f (next-dispatcher)]))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -190,8 +190,8 @@
 | 
				
			||||||
                                #:code 500
 | 
					                                #:code 500
 | 
				
			||||||
                                #:mime-type #"text/plain"
 | 
					                                #:mime-type #"text/plain"
 | 
				
			||||||
                                (λ (out)
 | 
					                                (λ (out)
 | 
				
			||||||
                                  (for ([port (list (current-output-port) out)])
 | 
					                                  (for ([port (list (current-error-port) out)])
 | 
				
			||||||
                                    (parameterize ([current-error-port out])
 | 
					                                    (parameterize ([current-error-port port])
 | 
				
			||||||
                                      (displayln "Exception raised in Racket code at response generation time:" (current-error-port))
 | 
					                                      (displayln "Exception raised in Racket code at response generation time:" (current-error-port))
 | 
				
			||||||
                                      ((error-display-handler) (exn-message e) e))))))])
 | 
					                                      ((error-display-handler) (exn-message e) e))))))])
 | 
				
			||||||
    body ...))
 | 
					    body ...))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue