api curl 로 표현 채택완료
회원(users_permissions_user) 에게 10포인트를 넣어주는 api입니다.
포스트맨으로 정상 동작하여, php curl로 표현하려고 하는데
api 제공측 에러메세지가
Array ( [statusCode] => 400 [error] => Bad Request [message] => When using multipart/form-data you need to provide your data in a JSON 'data' field
표기됩니다.
포스트맨에 설정을 curl로 잘못 표현했는지 확인 부탁드립니다..


</p>
<p>
$url = "주소~~<a href="<a href="https://api.flextalk.co.kr/histories" target="_blank" rel="noopener noreferrer">https://api.flextalk.co.kr/histories</a>">/histories</a>";
$p_data = array(
"users_permissions_user" => $app_id,
"points" => "10",
"reason" => "포인트전환"
);</p>
<p> $headers = array();
$headers[] = "Authorization: Bearer ".$s_token;
$headers[] = "'Content-type:multipart/form-data'";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1); //전달 데이터를 POST 형식으로 전달
curl_setopt($ch, CURLOPT_POSTFIELDS, $p_data ); //전달할 데이터값
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true); //TRUE 설정 시 curl_exec () 반환 값을 문자열로 반환
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false );
curl_setopt($ch, CURLOPT_COOKIE, '' );
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$g = curl_exec($ch); //curl 실행
curl_close($ch); //curl 세션 닫기
$info = json_decode($g, true);
print_r($info);</p>
<p>
답변 3개
post data를 json으로 넘겨보세요
$headers[] = "'Accept: application/json'";
$headers[] = "'Content-type: application/json;'";
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($p_data) ); //전달할 데이터값
쿠키에 아무 문자열이나 넣어보세요
curl_setopt($ch, CURLOPT_COOKIE, 'secure' );
댓글을 작성하려면 로그인이 필요합니다.
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
이것 한번 추가해 보세요.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
같은 메세지가 나옵니다.
$headers[] = "'Content-type: application/json;'";
로 변경해봐도 같은 에러네요..
포스트맨으로는 정상 동작하고 있습니다.