디지털 혁신에 대해들을 때 게으른 웃음이 오는가? 더 이상 공개 데이터 약속을 믿지 않습니까? "Portalitos"에서 공공 자금을 낭비하는 것이 추악하다고 생각하십니까? 당신은 올바른 장소에 있습니다.
이 계획은 프로그래밍 방식으로 관리 서비스를 사용하기 위해 공개 데이터 소스 (예 : 웹 페이지)를 참조하는 괜찮은 API를 구축하는 것 입니다.
실제 데모의 몇 가지 예를 참조하십시오.
포함해야 할 많은 서비스가 있으며 혼자서 할 수 없습니다. 공동 작업!
프로젝트는 여러 패키지로 나뉩니다.
egov-api-server 이 패키지를 사용합니다.API GraphQL을 노출하여 실제 공개 데이터에 액세스하는 HTTP 서버 (Demo). Apollo GraphQL을 사용하여 Node.js (TypeScript)에서 개발되었으며 데이터에 액세스하는 가장 쉬운 방법입니다.

데이터 체계를 참조 할 수 있습니다. 지역에서 이용할 수있는 지리적 위치 및 통신 서비스 (안테나, 디지털 텔레비전 채널, 사용 가능한 네트워크)의 데이터로 시작했습니다.
Node.js 10+ 만 있으면됩니다. 프로젝트를 처음 닫은 후 프로젝트를 초기화해야합니다.
git clone [email protected]:palmerabollo/egov.git
cd egov
npm install
그리고 그것을 실행하십시오 :
npm run start:api-server
http : // localhost : 4000에서는 쿼리를 실행하기 위해 API GraphQL에 웹 사이트에 액세스 할 수 있습니다. 기분이 좋으면 공동 작업 가이드의 개발 프로세스에 대한 자세한 내용이 있습니다.
참고 : 일부 행정에는 10 년 이상 취약점 (CVE-2009-3555)의 영향을받는 불안한 서버가 있습니다. 이것은 node.js> 16 / opensl 3.x의 지원을 방지합니다. 변수
SSL_OP_LEGACY_SERVER_CONNECT로 무시할 수 있는지 여부를 조사해야합니다.
여기에는 데이터 공급 업체의 구현 : 공개 소스 데이터를 추출하는 상담 서비스가 포함됩니다. 일부 서비스는 요청시 (온라인)에 데이터를 참조하고 다른 서비스는 로컬 데이터 (오프라인)를 사용합니다.
새로운 서비스를 만드는 것은 매우 간단합니다. 다음은 현재 개발되었습니다. 문제에서 새로운 아이디어를 확인하고 제안하거나 새로운 서비스로 풀 요청을 보내십시오. 매우 쉽습니다.
| 서비스 | 수업 | 데이터 원산지 | 온라인 |
|---|---|---|---|
| 인구 및 우편 번호를 검색하십시오 카테고리 : 일반 | PostalCodeService | geonames.org | ❎ (로컬 파일) |
| 휴대 전화 안테나 위치 카테고리 : 통신사 | AntennaService | geoportal.minetur.gob.es | ✅ (API) |
| 4G ~ 800MHz 적용 범위 확인 카테고리 : 통신사 | NetworkService | www.llega800.es | ✅ (API) |
| 지리적 위치 별 텔레비전 신호 카테고리 : 통신사 | DigitalTelevisionService | www.televisiongital.gob.es | ✅ (HTML) |
| 교통 레이더 카테고리 : 트래픽 | TrafficRadarService | www.dgt.es | ✅ (HTML, PDF) |
| 차량 정보 카테고리 : 트래픽 | TrafficVehicleService | www.dgt.es | ✅ (HTML, PDF) |
egov-data-providers 에서 이용할 수있는 상담 서비스의 프로그래밍 방식 사용의 예.
import * as egov from '@egov/data-providers' ;
let service = new egov . AntennaService ( ) ;
let antennas = await service . findAntennas ( 41.73 , - 5.32 ) ;
console . table ( antennas , [ 'code' , 'latitude' , 'longitude' ] ) ;
// output
// ┌─────────┬───────────────────────────────────┬───────────┬───────────┐
// │ (index) │ code │ latitude │ longitude │
// ├─────────┼───────────────────────────────────┼───────────┼───────────┤
// │ 0 │ 'VODAFONE ESPAÑA, S.A. - 144588' │ 41.471472 │ -4.989911 │
// │ 1 │ 'VODAFONE ESPAÑA, S.A. - 144589' │ 41.479806 │ -5.048222 │
// │ 2 │ 'ORANGE ESPAGNE, SAU - CYLR2147A' │ 41.471472 │ -4.989911 │
// │ 3 │ 'ORANGE ESPAGNE, SAU - CYLR2223B' │ 41.479806 │ -5.048222 │
// └─────────┴───────────────────────────────────┴───────────┴───────────┘EGOV 코드는 Node.js (TypeScript)에서 개발되었습니다. 다른 프로그래밍 언어로 새로운 데이터 공급 업체에 기여하고자하는 사람들은 HTTP 인터페이스를 노출시키는 독립적 인 프로세스로 실행될 가능성이 있습니다. 이러한 어댑터 프로세스는 데이터를 얻고 처리하여 해당 HTTP 인터페이스를 통해 EGOV에 제공 할 수 있습니다.
DGT 레이더 데이터를 스크랩하는 파이썬 프로세스가있는 교통 레이더를 얻는 개념 증명이 있습니다. 이 프로세스는 AWS Lambda에서 서버리스 기능으로 실행됩니다.
Data-Provider- (HTTP)-> 어댑터-(HTTP Scrape)-> DataSource
왜 서버리스인가? 경제적으로 지속 가능한 프로젝트를 수행하는 방법이기 때문에 지금은 돈을 요구하지 않고.
Copyright 2019 -Guido García (Guido.garcia at Protonmail dot com)
GNU, 일반 공개 라이센스, 버전 2.0 ( "라이센스")에 따라 라이센스가 부여되었습니다 ( "라이센스"); 라이센스를 준수하는 것 외에는이 파일을 사용할 수 없습니다.
서브 정보 우편 번호는 Creative Commons Attribution 4.0 라이센스에 따라 Geonames에 의해 제공됩니다.