공공api 적용하는법.. 완전초보입니다
본문
홈페이지 메인화면에 공공api 사회서비스 제공기관 정보 검색 기능인데
서비스키만 받아서 넣으면 bool(false)라고 뜹니다.
또 다른걸 만져야하는게있나요
/* PHP 샘플 코드 */
$ch = curl_init();
$url = 'http://api.socialservice.or.kr/api/service/provider/providerList'; /*URL*/
$queryParams = '?' . urlencode('ServiceKey') . '=서비스키'; /*Service Key*/
$queryParams .= '&' . urlencode('pageNo') . '=' . urlencode('1'); /**/
$queryParams .= '&' . urlencode('numOfRows') . '=' . urlencode('10'); /**/
$queryParams .= '&' . urlencode('sido') . '=' . urlencode('006'); /**/
$queryParams .= '&' . urlencode('signgu') . '=' . urlencode('3620000'); /**/
$queryParams .= '&' . urlencode('serviceType') . '=' . urlencode('4000'); /**/
$queryParams .= '&' . urlencode('serviceName') . '=' . urlencode('지역'); /**/
$queryParams .= '&' . urlencode('providerName') . '=' . urlencode('제공기관4653'); /**/
curl_setopt($ch, CURLOPT_URL, $url . $queryParams);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
답변 3
localhost 에서 api 를 호출했기 때문일 수 있습니다.
사이트를 localhost 대신 127.0.0.1 로 접속한 뒤 해당 API 호출 URL 로 이동을 해 보거나
로컬 컴퓨터가 아닌 웹호스팅으로 이전한 뒤 해당 환경에서 테스트해 볼 수 있습니다.
가끔은
urlencode('ServiceKey')
대신에
'ServiceKey'
를 넣어야 하는 경우가 있습니다.
xml 파싱등에 대해 구글 검색을 조금 더 해보시면 좋을 것 같아요. 공공데이터에서 제공하는 방식이 json 또는 xml 등의 방식으로 제공하는데 이것을 선생님이 사용하는 php에서 원하는 데이터로 맞추는 작업이 필요하신 겁니다. 검색하시면 여러 자료가 나올거예요~