173.7. 소비자 예

이 샘플에서는 http://localhost:8080/myapp/myservice 에서 HTTP 서비스를 노출하는 경로를 정의합니다.

localhost 사용

URL에 localhost 를 지정하면 Camel은 로컬 TCP/IP 네트워크 인터페이스에만 엔드포인트를 노출하므로 작동하는 시스템 외부에서 액세스할 수 없습니다.

특정 네트워크 인터페이스에 Jetty 엔드포인트를 노출해야 하는 경우 이 인터페이스의 숫자 IP 주소를 호스트로 사용해야 합니다. 모든 네트워크 인터페이스에 Jetty 엔드포인트를 노출해야 하는 경우 0.0.0.0 주소를 사용해야 합니다.

전체 URI 접두사에서 수신 대기하려면 How do I let Jetty match wildcards.

실제로 HTTP별 경로를 노출하고 이미 서블릿이 있는 경우 서블 릿 전송을 참조 해야 합니다.

당사의 비즈니스 논리는 MyBookService 클래스에 구현되어 HTTP 요청 콘텐츠에 액세스한 후 응답을 반환합니다.
참고: 코드 단위 테스트의 일부이므로 어설션 호출이 이 예제에 표시됩니다.

다음 샘플은 URI 매개 변수를 포함하는 모든 요청, 하나, 끝점, mock: one 및 기타 모든 요청을 mock:other 로 라우팅하는 콘텐츠 기반 경로를 보여줍니다.

따라서 클라이언트가 HTTP 요청을 보내는 경우 http://serverUri?one=hello, Jetty 구성 요소는 HTTP 요청 매개 변수를 .header의 교환에 복사합니다. 그런 다음 간단 한 언어를 사용하여 이 헤더를 포함하는 Exchange를 특정 끝점 및 다른 모든 끝점으로 라우팅할 수 있습니다. Simple (예: OGNL)보다 언어를 사용하는 경우 매개 변수 값을 테스트하고 헤더 값을 기반으로 라우팅을 수행할 수도 있습니다.