私は残りのエンドポイントのマッピングに問題があります。それらには、階層的な自然キーが含まれます。だから私はパスを短くするパスを欲し、大きなアイテム空間から結果を得るでしょう。SpringMVCは階層的なURLをマップしません
問題は、最も完全修飾パスが機能し、leas修飾パスが機能しますが、途中の2つのパスは問題ではありません。彼らはコントローラに入ることなく404を返します。だから私はそれがマッピング問題であると仮定します。どんな助けもありがとう。
@RestController
@RequestMapping("/bookmark/v1")
public class BookmarkRestController
{
// this works
@GetMapping("/member/{memberId}/content/{contentSource}/{contentType}/{contentId}")
public ResponseEntity<Bookmark> read(
@PathVariable final String memberId,
@PathVariable final String contentSource,
@PathVariable final String contentType,
@PathVariable final String contentId)
{
...
}
// this returns 404 without ever getting into the controller
@GetMapping("/member/{memberId}content/{contentSource}/{contentType}")
public ResponseEntity<Iterable<Bookmark>> read(
@PathVariable final String memberId,
@PathVariable final String contentSource,
@PathVariable final String contentType)
{
...
}
// this returns 404 without ever getting into the controller
@GetMapping("/member/{memberId}content/{contentSource}")
public ResponseEntity<Iterable<Bookmark>> read(
@PathVariable final String memberId,
@PathVariable final String contentSource)
{
...
}
// this works
@GetMapping("/member/{memberId}")
public ResponseEntity<Iterable<Bookmark>> read(@PathVariable final String memberId)
{
...
}
}
@GetMapping("/member/{memberId}/content/{contentSource}/{contentType}/{contentId}")
public ResponseEntity<Bookmark> read(
@PathVariable final String memberId,
@PathVariable final String contentSource,
@PathVariable final String contentType,
@PathVariable final String contentId)
@GetMapping("/member/{memberId}content/{contentSource}/{contentType}")
public ResponseEntity<Iterable<Bookmark>> read(
@PathVariable final String memberId,
@PathVariable final String contentSource,
@PathVariable final String contentType)
@GetMapping("/member/{memberId}content/{contentSource}")
public ResponseEntity<Iterable<Bookmark>> read(
@PathVariable final String memberId,
@PathVariable final String contentSource)
@GetMapping("/member/{memberId}")
public ResponseEntity<Iterable<Bookmark>> read(@PathVariable final String memberId)
'{memberId} content'に'/'を入れなかったのは意図的ですか? – dunni