• 목록
  • 아래로
  • 위로
  • 3
  • Hanam09
  • 조회 수 309

저는 안전재난문자의 목록들을 저의 사이트에서 보고싶어 국민재난안전포털의 내부 API를 사용하여 실시간 문자 컨텐츠를 제공하려고 했습니다.

가져오려는 URL은 다음과 같습니다.


http://m.safekorea.go.kr/idsiSFK/neo/ext/json/disasterDataList/disasterDataList.json


그러나 어떠한 이유인지는 몰라도 저 API가 호출되지 않고 엉뚱한 더미데이터로 응답됩니다.


요청하기위해 사용된 저의 코드는 다음과 같습니다.





<?php
header('Content-type: application/json');

$Request = curl_init('http://m.safekorea.go.kr/idsiSFK/neo/ext/json/disasterDataList/disasterDataList.json');

$header[] = "Referer: http://m.safekorea.go.kr/idsiSFK/neo/main_m/dis/disasterDataList.html";
$header[] = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9";
$header[] = "Accept-Language: ko,en-US;q=0.9,en;q=0.8,ko-KR;q=0.7";

curl_setopt($Request, CURLOPT_RETURNTRANSFER, true);
curl_setopt($Request, CURLOPT_HTTPHEADER, $header);
curl_setopt($Request, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36');

echo curl_exec($Request);





저 포털에서 IP를 차단한걸까요? 

저 API를 사용하기 위해서 어떻게 해야할까요?






+해결후 추가


제가 내린 결론은 PHP CURL의 자체적인 문제였습니다.

이거하나 찾으려고 Window Server 2016 돌리고 크롬 깔고 테스트하고 VPS운영체제를 몇개를 쓴건지 잘 모르겠습니다.

하루를 다 날렸네요.

작성자
Hanam09 36 Lv. (50%) 106610/109520EXP

 

안녕!

 

댓글 3

Hanam09 작성자
profile image

해결되었습니다 :)

PHP란 소스의 자체적인 문제인것 같네요.

cmd의 curl 로 해결했습니다.

comment menu
2020.02.27. 23:45

신고

"Hanam09님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 황금 서버 (30일)humit
profile image

gzip으로 인코딩이 되어 있어서 그렇습니다.


<?php
header('Content-type: application/json; utf-8');
$url = 'http://m.safekorea.go.kr/idsiSFK/neo/ext/json/disasterDataList/disasterDataList.json';
$Request = curl_init();
curl_setopt($Request, CURLOPT_URL, $url);
// gzip 인코딩 설정
curl_setopt($Request,CURLOPT_ENCODING , "gzip");
curl_setopt($Request, CURLOPT_RETURNTRANSFER, true);
curl_setopt($Request, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36');
echo curl_exec($Request);

curl_close($Request);



comment menu
2020.02.27. 23:58

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

Hanam09 작성자 → humit
profile image

오오!! 역시 humit님, 빠르게 문제점을 찾으시다니 대단하십니다!

 

인코딩이라는 간단한 문제였다니, 역시 저는 한참 멀었나봅니다.

정말로 감사합니다. 덕분에 궁금증이 해결되었어요~!

comment menu
2020.02.28. 00:37

신고

"Hanam09님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 24.02.11.17:21 998
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 4676
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4480
566 호스팅 환경에서 php로 소켓서버를 만들수 있나요? 5 joyfuI 21.04.27.13:54 318
565 SH 메모 오류 관련 ㅠㅠ 4 모니터 17.09.15.02:01 317
564 Cloudflare의 인증서 등록 3 우마루 16.10.08.18:06 317
563 맥북의 팬리스 여부가 정리된 웹페이지를 추천 부탁드립니다 ^^ 4 이니스프리 19.03.31.10:49 315
562 XPEnology VMDK 파일 용량 오버 문제 12 image xnview 18.07.06.14:03 315
561 머신러닝 오프라인 강좌를 수강해보려고 하는데요~ 이거 괜찮을까요? 5 image 이니스프리 19.12.11.03:12 314
560 CSS 이미지 창크기에 맞추는 방법 질문! 2 마당쇠15 20.05.31.10:47 313
559 히어로 무비 추천 부탁드립니다! 30 이니스프리 19.10.29.13:48 312
558 Angular JS가 도데체 뭔지 아직 이해가 안가요.... 15 Seia 17.10.02.18:06 312
557 이 부품들로 개인 서버 구축 가능할까요? 17 제르엘 18.02.25.16:29 311
556 드롭박스의 상태가 이상합니다. 5 국내산라이츄 17.10.15.21:05 311
555 xe 설치 1 맛수타 17.08.24.11:37 311
554 근데 물어보게 있는데여.. 서브도메인 이랑 Vhost용은 뭘차이? 2 Hanam09 17.07.01.15:50 311
553 이거 여백은 어떻게 해야하나요.. 1 image Ursus 16.08.29.17:30 311
552 우분투 스토어를 통한 업데이트가 안 됩니다.. 4 image 국내산라이츄 17.09.26.00:45 310
551 Plus Hosting 1Gbytes 기본 제공 도메인 이름 알려주세요 1 Seia 17.02.06.01:21 310
[해결][CURL/PHP] 스터디포어스서버에서의 PHP CURL에 대한 특정 서버의 잘못된 응답에 대하여 3 Hanam09 20.02.27.15:36 309
549 코딩 컨벤션상 전역변수와 지역변수의 변수명을 동일하게 하는 것이 무방한가요? 4 이니스프리 19.11.17.18:09 306
548 다른 서버에 있는 CSV 파일을 불러오는 방법에 대해 여쭤봅니다 ^^ 9 image 이니스프리 18.10.24.18:02 306
547 신서버에 서비스를 신청헸는데, 새로운 도메인에 접속이 되지 않아요. 1 워시퍼 16.12.26.22:40 306