테스트 사이트 - 개발 중인 베타 버전입니다

curl에서 헤더를 변경했을 뿐인데 파라미터가 빠져서 안갑니다. 채택완료

라균 2년 전 조회 1,935

</strong></p>

<p> </p>

<p>function request_curl ($url, $is_post = 0, $data = array(), $custom_header = NULL)

{

//승인 요청을 보내는 함수입니다.

$ch = curl_init ();

curl_setopt ($ch, CURLOPT_URL, $url);

curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt ($ch, CURLOPT_SSLVERSION, 1);

curl_setopt ($ch, CURLOPT_POST, $is_post);

if ($is_post) {

curl_setopt ($ch, CURLOPT_POSTFIELDS, $data);

}



curl_setopt ($ch, CURLOPT_TIMEOUT, 300);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);

//curl_setopt ($ch, CURLOPT_HEADER, true);



if ($custom_header) {

curl_setopt ($ch, CURLOPT_HTTPHEADER, $custom_header);

}

$result[0] = curl_exec ($ch);

$result[1] = curl_errno ($ch);

// $result[2] = curl_error ($ch);

// $result[3] = curl_getinfo ($ch, CURLINFO_HTTP_CODE);

curl_close ($ch);

return $result[0];

}</p>

<p><strong>

 

$custom_header = ['Content-type: application/x-www-form-urlencoded'];

$params = ['paymentId' => $paymentId];

 

request_curl('url', 1, $params, $custom_header);

1. 처음에 $custom_header 에는 openAPI에서 필요한 키들을 넣어주고 통신을 잘 했는데
openAPI에서 Content-type에 multipart/form-data 대신 application/x-www-form-urlencoded 바꿔서 요청해주세요라고 메일이 와서 변경하니 파라미터를 보냈음에도 불구하고 받는 곳에서 파라미터가 없다고 나온다 합니다 ㅠㅠ

 

2. 그리고 boundary 또한 제외 부탁 요청을 받았는데 crul 통신에서 boundary 제외를 어떻게 하나요?

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
s
2년 전

$data 를 그냥 array로 보내지 말고 http_build_query($data) 로 해서 테스트해보세요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

플라이
2년 전

파라미터가 배열로 그냥 전송하면서 안넘어가는듯 한데 이게 url 인코딩이 되어 전송을 해보시는게 좋을듯 합니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인