2017-12-13 27 views
0

여러 요청 쿼리 매개 변수를 REST API의 URI에 삽입하려고하면 다음과 같은 문제가 발생합니다.여러 URI 쿼리 매개 변수가있는 WSO2 ESB API를 저장하려고하면이 구문 오류가 발생합니다.

나는 다음과 같은 상황이있다. 단일 쿼리 매개 변수 (process_phase_id = {process_phase_id})는이 같은 잘 작동으로 URL을 사용 :

<?xml version="1.0" encoding="UTF-8"?> 
<api context="/enutrifood/bylocation" name="ENutriFoodByLocation" xmlns="http://ws.apache.org/ns/synapse"> 
    <resource methods="GET" uri-template="/{localizationId}/messages?process_phase_id={process_phase_id}"> 
    ............................................................... 
    ............................................................... 
    ............................................................... 

을하지만 난 & 기호로 나누어 여러 쿼리 매개 변수, 이런 일이있는 경우 :

<?xml version="1.0" encoding="UTF-8"?> 
<api context="/enutrifood/bylocation" name="ENutriFoodByLocation" xmlns="http://ws.apache.org/ns/synapse"> 
    <resource methods="GET" uri-template="/{localizationId}/messages?process_phase_id={process_phase_id}&q2={v2}"> 
    ............................................................... 
    ............................................................... 
    ............................................................... 

당신이 지금 리소스를 볼 수있는 2 개 매개 변수가 있습니다

지금은 내가이 구문 오류 메시지 획득하고 내 API를 저장하는 경우 :

enter image description here

왜? 무엇이 문제 일 수 있습니까? 내가 뭘 놓치고 있니? 나는 어쩌면 & 문자 어떤 방법으로 탈출해야? API에서이 문제를 해결하고 여러 쿼리 매개 변수를 사용하려면 어떻게해야합니까? 이 XML 구성 파일이기 때문에

답변

2

, 당신은 &&amp;에 탈출해야합니다.

&은 XML 엔터티 (;으로 끝남)의 시작을 나타냅니다. 따라서 문서에 실제 &이 있으려면 문서에서 이스케이프 처리해야합니다.

오류에 관해서는, 문서에서, 파서는 엔티티의 이름으로 q2를 참조하지만, =에서 구문 분석을 중지하고는 종료하는 ; 보지 못했다대로 구문 오류가 있다는 결론 실재.