Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A postgis provider for koop

License

NotificationsYou must be signed in to change notification settings

doneill/koop-provider-pg

Repository files navigation

npm versionBuild Status

Koopprovider to queryPostGIS spatial data, convert it toGeoJSON as input intoKoop and convert into the GeoServices specification supported by ArcGIS products.

Database configuration

Database connection parameters can be configured to any connection using the following environment variables:

# All values should be string values except PG_PORTPG_HOST="${HOST}"PG_PORT=${PORT}PG_DATABASE="${DATABASE}"PG_USER="${USER}"PG_PASSWORD="${PASSWORD}"

If database connection environment variables are not set the provider will use the default configuration.

  • Openconfig/default.json and set your database connection parameters, an example is provided inconfig/example.json.
{"db": {"host":"host","port":5432,"database":"dbname","user":"user","password":"password"  }}

CustomidField

The provider usegid as the OBJECTID unique identifier. Optionally, if you prefer to use another column from your database table, you can add/set the following environment variable for your data's custom feature unique identifier.

# value should be String, eg. "id"export PG_OBJECTID="${OBJECT_ID}"

Custom PostgreSQL LIMIT

The provider uses Postgres JSONB which limits document size to 255MB in size. To optimize returning data from large datasets exceeding 255MB you can optionally add a limit to just a portion of the rows that are used to create the GeoJSON data. The default limit is 10000000 rows.

# value should be String, e.g. "1000"export PG_LIMIT="${LIMIT}"

Install

Koop providers require you to first installKoop. You can addkoop-provider-pg to your Koop server dependencies by installing it with npm:

# install koop cli using npm$ npm install -g @koopjs/cli# create a new koop app$ koop new app pg-koop# cd into the pg-koop app$cd pg-koop# install provider$ koop add provider koop-provider-pg# start koop server$ koop serve

Example API Query:

Replace${schema}.${table} withschema.table from your PostGIS db to translate.

curl localhost:8080/pg/rest/services/${schema}.${table}/FeatureServer/0/query

Add as Feature Layer

  • Esri Leaflet
// esri leaflet feature layerL.esri.featureLayer({url:'http://localhost:8080/pg/rest/services/${schema}.${table}/FeatureServer/layers'}).addTo(map);

feature-service

  • ArcGIS Online WebMap
https://www.arcgis.com/home/webmap/viewer.html?url=http://localhost:8080/pg/rest/services/${schema}.${table}/FeatureServer/

agol feature-service

Test it out

Run server:

  • npm install
  • npm start

Dependencies

Contributors

Licensing

A copy of the license is available in the repository'sLICENSE file.

About

A postgis provider for koop

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors2

  •  
  •  

[8]ページ先頭

©2009-2025 Movatter.jp