value: [ 0: “MEMBER” ] 이렇게 가는데 앞에 index를 없앨 수 있는 방법이 있나요?
안녕하세요.
value는 일반적인 array(list)로 ["member"]
이렇게 보내고 있습니다.
혹시 어떤 서버언어, 프레임워크를 쓰고 계신가요? 알려주시면 테스트에 도움이 됩니다.
추가로 이미 알고 계시겠지만, requestFn을 통해 값을 보내기 전에 수정 가능합니다.
이건 해결했습니다.
params에서 api request에 입력값을 배열로 넣을 수 있는 방법이 있나요?
param이 여러개 값을 가지는경우 자동으로 value를 array로 보내고 있습니다.
{{ }} 부분에 javascript code 입력 가능합니다.
multi dropdown시 예제를 첨부드립니다.
- type: http
axios:
url: http://localhost:9500/sample-api/0908
method: POST
data:
item: "{{item}}"
# item2: "{{ [1,2,3] }}"
params:
- key: item
label: 신규 카테고리 추가
selectOptions:
enabled: true
multiple: true
dropdown:
- 호텔
- 리조트
- 캠핑
- 독채
- 수영장
답변 감사합니다.
-
dropdown이 아닌 기본 input 값에서 할 수 있는 방법이 있을까요?
-
api response에 있는 Id를 아래 값으로 자동으로 request body에 넣어주는 방법이 있을까요?
params:- key: surveyId
label: 설문 아이디 (surveyId)
required: true
format: number
-
params input 값으로 request body 값이 다 string으로 들어가는 것 같은데, number나 array등 타입 변환 하는 방법이 궁금합니다
1,3번에 대해서는 이와 같이 처리가능합니다.
- type: http
axios:
url: http://localhost:9500/sample-api/0908
method: POST
data:
# string to array
item1: "{{ [item1] }}"
# string to number
item2: "{{ +item2 }}"
params:
- key: item1
value: string value
- key: item2
value: 3000
2번에 대해서는 다양한 방법이 있는데 여러개 API를 순서대로 호출하는 예제를 찾아보고 답변드리겠습니다.
[{“code”: " +surveyId ",“value”: 3},{“code”: “question”,“value”: “테스트입니다”},{“code”: “type”,“value”: [“SUBJECTIVE”]},{“code”: “isRequired”,“value”: true},{“code”: “placeholder”,“value”: “테스트”},{“code”: " +orderNo ",“value”: 1},{“code”: " [choices] ",“value”: [“”]}]
원래 code 부분이 저렇게 나오는 게 맞을까요? “ +surveyId “ 이렇게 나오네요
data:
surveyId: "{{ +surveyId }}"
question: “{{question}}”
type: “{{type}}”
isRequired: “{{isRequired}}”
placeholder: “{{placeholder}}”
orderNo: “{{ +orderNo }}”
choices: “{{ [choices] }}”
2번. API 호출시 getRowId API를 호출하여 id를 가져오는 예제입니다.
또는, 최초 1회 호출후 sessionStorage등에 보관하고 다음 호출부터 계속 사용하는 방식도 가능합니다.
- type: http
id: getRowId
axios:
url: http://localhost:9500/sample-api/0908-1
method: GET
hidden: true
autoload: false
- type: http
axios:
url: http://localhost:9500/sample-api/0908
method: POST
data:
# value from other api
item3: "{{item3}}"
params:
- key: item3
hidden: true
requestFn: |
const result = await getRowId.trigger()
if (!result) throw new Error('failed to get rowId')
const rowId = result.rows[0].rowId
const item3 = params.find(e => e.key == 'item3')
item3.value = rowId
안녕하세요. request 하셨을때 서버쪽에 숫자 값 전달이 안되신걸까요?
안내 주신대로 data에 {{ +surveyId }} 로 감싸면 string이 number로 타입 변환이 된다고 안내 주셔서 했는데 request body에 정상작동 한다면 surveyId: 1 이렇게 가야하는데 위에 첨부한 이미지처럼 code 부분에 “ +surveyId “: 1 로 갑니다