메인 항목으로

2.11. 서브미션 setRequestEncoder 사용 시, request 내용이 달라진 현상

2.11.1. 변경 전

서브미션의 mediaType이 application/x-www-form-urlencoded일 때 요청 데이터 인코딩 시 마지막에 불필요한 &기호를 추가하던 문제와 setRequestEncoder 사용 시 인코딩이 두 번 중첩되던 문제가 있었습니다.

image.png

2.11.2. 변경 후

1.0.5014(2024년 4월 릴리즈) 버전에서 서브미션의 mediaType이 application/x-www-form-urlencoded일 때 마지막에 불필요한 & 기호가 추가되던 문제와 setRequestEncoder 사용 시 두 번 인코딩 되는 현상이 수정되었습니다.

image.png

2.11.3. 조치 방안

최신 버전에서 기존의 동작으로 처리하려면 아래와 같이 수정이 필요합니다.

var submission = app.lookup("sms");
submission.setRequestEncoder(function(api, data) {
    var dmSearch= app.lookup("dmSearch");
    var params = dmSearch.getDatas();
    var dataStr = JSON.stringify(params);
    var encodingData = encodeURIComponent(dataStr);
    return {
        content: encodingData;
    }
});
submission.send();