เรากำลังใช้เส้นทางโดยทางโปรแกรมโดยใช้การใช้งาน RouteDefinitionLocator
เรามีบริการสองรายการที่ควรลงทะเบียนในเส้นทางเส้นทางเดียวกัน โดยบริการหนึ่งมีไว้เป็นทางเลือกหากไม่มีอีกบริการหนึ่ง เส้นทางที่ต้องการซึ่งมีเส้นทางเฉพาะคือ:
RouteDefinition{id='CompositeDiscoveryClient_ms-1400133464', predicates=[PredicateDefinition{name='Path', args={pattern=/yambas/rest/apps/*/models/ms/**}}], filters=[FilterDefinition{name='RewritePath', args={regexp=/yambas/rest/apps/(?<remaining>.*), replacement=/ms/apps/${remaining}}}], uri=lb://ms, order=0}
และแบบทั่วไปมากกว่าซึ่งควรยิงเฉพาะเมื่อพบเส้นทางอื่น:
RouteDefinition{id='CompositeDiscoveryClient_yambas-1171178634', predicates=[PredicateDefinition{name='Path', args={pattern=/yambas/rest/**}}], filters=[], uri=lb://yambas, order=0}
ดังนั้น เมื่อโทร /yambas/rest/apps/bla/models/ms
ควรใช้เส้นทางแรก และเมื่อโทร /yambas/rest/apps/bla/models/otherms/*
ควรใช้เส้นทางที่สอง (ทางเลือกสำรอง )
ปัญหาคือ แม้แต่แอตทริบิวต์ order ที่เส้นทางก็ดูเหมือนจะไม่สามารถแก้ปัญหานี้ได้ ขณะนี้เราไม่พบความเป็นไปได้ที่จะตั้งค่าลำดับ/ลำดับความสำคัญของเส้นทางนี้ นี่คือความตั้งใจใช่ไหม?
/yambas/rest/apps/bla/models/ms
- person Andreas   schedule 06.05.2019