2017-10-13 14 views
0

"보트"리소스가있는 API를 작성하려고하는데 ID 및 다른 리소스로이 URL을 구축하고 싶습니다.GAE Python WebApp2 url/resource/: id/resource

localhost:8080/boat/absk12712480/arrival 

나는 원래했다 :

app = webapp2.WSGIApplication([ 
    ... 
    ('/boat/(.*)/arrival', ArrivalHandler), 
    ... 
    ], debug=True) 

그러나 그것은 ID의 일환으로 "/ 도착을"잡아 유지했다. 이렇게 나는 시도했다 :

('/boat/(.*?(?=\/)/arrival', ArrivalHandler) 
('/boat/(.*?(?=\/arrival)/arrival', ArrivalHandler) 

나는 가능한 무엇을하는 것을 시도하고 있는가?

답변

1

('/boat/(.*)/arrival', ArrivalHandler)에서 정규식이 너무 욕심 거리며 webapp2 URI format과 일치하지 않습니다. 명명 된 매개 변수를 원하는 경우

('/boat/<id:[a-z0-9]+>/arrival', ArrivalHandler)

('/boat/<:[a-z0-9]+>/arrival', ArrivalHandler)

이 일을 해야지, 또는 : ID가 언제나 소문자 아스키와 숫자 인 경우, 당신은 사용할 수 있습니다.

+0

도움 주셔서 감사합니다. 귀하의 정규식 도움으로 나는 해결책을 찾았습니다. ** ('/ boat/([A-z0-9 \ -] +)/arrival'** 나는 게으른 핸들러를 사용하기 때문에() –