php 에서 crul로 보낸 값이 리스트인경우 java spring에서 값을 못받는 오류

php 에서 crul로 보낸 값이 리스트인경우 java spring에서 값을 못받는 오류

QA

php 에서 crul로 보낸 값이 리스트인경우 java spring에서 값을 못받는 오류

답변 1

본문

외부 API에서 계속 값이 없다고 하길래 로그 달라고 해서 보니 바로 어떤 오류인지는 알았습니다... 

ERROR [invalidPropertyException] message='attachment[button][0][name]'

invalidPropertyException 만 검색해도 나오더라구요... 

 

문제는 php 에서 attachment[button][0][name] 이런형태를 attachment[button][0].[name] 이렇게 바꿔서 보내야 하는데 어떻게 표현해야 가능할까요...

 

http_build_query 를 사용해서 post방식으로 보내고 있습니다.


$attachment = array(
    name => 'test'
);
$params_c = array(
    attachment => array(
        button => array(
            $attachment
        )
    )
);
$data = http_build_query($params_c);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $data);

현재는 위와같이 보냈습니다.

이 질문에 댓글 쓰기 :

답변 1

php에서 디버깅 해보셨나요?

네 디버깅 해서 attachment[button][0][name] -> attachment[button][0].[name]
배열 숫자 뒤에 . 을 붙여 줘야 java spring 에서 받을 때 이상 없이 받는것도 확인되었습니다.
http_build_query에서는 . 을 붙여주지 않아 하나하나 수정하는것을 해보고 다 완성했지만 너무 이쁘지도 않고 복잡해져서 node 서버로 구현했습니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 27
© SIRSOFT
현재 페이지 제일 처음으로