응답관리 인코딩 처리 추가

This commit is contained in:
Sungpil Hyun
2024-05-28 12:18:28 +09:00
parent 9b53b9272c
commit cf86f2a11a
6 changed files with 61 additions and 10 deletions
@@ -83,6 +83,7 @@
<input type="number" th:field="*{responses[__${status.index}__].statusCode}" required/>
<textarea th:field="*{responses[__${status.index}__].body}"></textarea>
<input type="number" th:field="*{responses[__${status.index}__].delay}" required/>
<input type="text" th:field="*{responses[__${status.index}__].encodingCharset}" />
<input type="hidden" th:field="*{responses[__${status.index}__].defaultResponse}" />
<ul class="response_conditions">
<li th:each="condition, status: *{responses[__${status.index}__].conditions}">
@@ -158,6 +159,10 @@
<input class="form-control" type="number" name="delay" required/>
<label class="form-label must">응답 지연 시간(ms)</label>
</div>
<div class="form-floating mt-1">
<input class="form-control" type="text" name="encodingCharset"/>
<label class="form-label must">문자 Set</label>
</div>
<label class="form-label mt-1">응답 Body</label>
<div class="response_body" style="width:100%;height:250px;border:1px solid grey;"></div>
<textarea class="form-control" style="display: none;" name="body"></textarea>
@@ -282,6 +287,7 @@
//statusCode, delay, defaultResponse, body 로 끝나는 항목을 찾음
response.statusCode = $(this).find('input[name$="statusCode"]').val();
response.delay = $(this).find('input[name$="delay"]').val();
response.encodingCharset = $(this).find('input[name$="encodingCharset"]').val();
response.defaultResponse = $(this).find('input[name$="defaultResponse"]').val()==='true';
response.body = $(this).find('textarea[name$="body"]').val();
@@ -389,11 +395,13 @@
nodeCopy.find('input[name="statusCode"]').attr('name', 'responses[' + i + '].statusCode');
nodeCopy.find('input[name="defaultResponse"]').attr('name', 'responses[' + i + '].defaultResponse');
nodeCopy.find('input[name="delay"]').attr('name', 'responses[' + i + '].delay');
nodeCopy.find('input[name="encodingCharset"]').attr('name', 'responses[' + i + '].encodingCharset');
nodeCopy.find('textarea[name="body"]').attr('name', 'responses[' + i + '].body');
nodeCopy.find('input[name="responses[' + i + '].statusCode"]').val(model.responses[i].statusCode);
nodeCopy.find('input[name="responses[' + i + '].defaultResponse"]').val(model.responses[i].defaultResponse);
nodeCopy.find('input[name="responses[' + i + '].delay"]').val(model.responses[i].delay);
nodeCopy.find('input[name="responses[' + i + '].encodingCharset"]').val(model.responses[i].encodingCharset);
let me = this;
@@ -421,6 +429,10 @@
model.responses[i].delay = $(this).val();
});
nodeCopy.find('input[name="responses[' + i + '].encodingCharset"]').on('input', function () {
model.responses[i].encodingCharset = $(this).val();
});
$('#responseTabContent').append(nodeCopy);
if(view.currentIdx >= model.responses.length){
view.currentIdx = model.responses.length - 1;