[GeoServer - Rest API 활용] Coverage Store , Coverage

식빵·2024년 4월 24일
0

Geoserver

목록 보기
6/7
post-thumbnail

PostMan 활용을 위한 세팅

GeoServer 는 기본적으로 basic 인증 방식을 제공하기 때문에 아래와
같이 Postman 설정을 해주면 추후에 401 에러 같은 것들이 나지 않게 된다.
geoserver 설치 후 기본으로 제공되는 admin 계정을 사용했다.

위처럼 설정하고 ctrl + s 을 눌러서 꼭 저장해야 한다!

참고로 geoserver 의 호스트는 localhost:8080 으로 가정하고 테스트했다는 점
유의하시기 바랍니다.

url 또는 request body 에 나오는 toastbread 는 제가 테스트용으로
만든 GeoServer WorkSpace (작업공간) 입니다! 여러분들은
여러분들만의 작업공간을 만들고 진행해주시기 바랍니다~



CoverageStore 신규등록

참고: CoverageStore?
A coverage store describes how access a raster data source.

API 요청

  • POST http://localhost:8080/geoserver/rest/workspaces/<workspace>/coveragestores/
  • requestBody (xml):
<?xml version="1.0" encoding="UTF-8"?>
<coverageStore>
	<name>신규등록</name>
	<description>설명설명...</description>
	<type>GeoTIFF</type>
	<enabled>true</enabled>
    <workspace>
        <name>toastbread</name>
    </workspace>
	<url>file://D:\shape_files\netcdf_sample\geonpaas_test_for_mosaic_gwc\02_pure_gdal_and_5186_change\gdal_output_5186.tif</url>
</coverageStore>
  • 전송해서 Http Status=201 이면 성공입니다.
  • 그외 것들은 모두 실패한 겁니다.

GeoServer Admin 페이지 확인

CoverageStores 목록조회

API 요청

  • GET http://localhost:8080/geoserver/rest/workspaces/<workspace>/coveragestores

결과 확인

Raster 로 발행될 수 있는 DataStore 들의 목록이 나옵니다.

  • 참고로 여기 나오는 href 를 클릭하면 실제 DataStore 의 정보를 조회할 수 있습니다!
    (아래 그림 참고)

Coverage 생성 (= Raster Layer 발행)

참고: Coverage?
A coverage is a raster data set which originates from a coverage store.

API 요청

  • POST http://localhost:8080/geoserver/rest/workspaces/<workspace>/coveragestores/<아까만든 coverageStore 의 이름>/coverages
  • requestBody(xml) :
<?xml version="1.0" encoding="UTF-8"?>
<coverage>
    <name>MY_RASTER_LAYER</name>
    <title>MY_RASTER_LAYER</title>
    <keywords>
        <string>MY_RASTER_LAYER</string>
        <string>somesome</string>
        <string>toastbread:MY_RASTER_LAYER</string>
        <string>toastbread</string>
    </keywords>
    <enabled>true</enabled>
    <parameters>
        <entry>
            <string>OVERVIEW_POLICY</string>
            <string>QUALITY</string>
        </entry>
        <entry>
            <string>MergeBehavior</string>
            <string>FLAT</string>
        </entry>
        <entry>
            <string>MaxAllowedTiles</string>
            <int>-1</int>
        </entry>
        <entry>
            <string>ExcessGranuleRemoval</string>
            <string>NONE</string>
        </entry>
        <entry>
            <string>USE_JAI_IMAGEREAD</string>
            <boolean>true</boolean>
        </entry>
        <entry>
            <string>RescalePixels</string>
            <boolean>true</boolean>
        </entry>
        <entry>
            <string>SUGGESTED_TILE_SIZE</string>
            <string>512,512</string>
        </entry>
        <entry>
            <string>FootprintBehavior</string>
            <string>Transparent</string>
        </entry>
    </parameters>
</coverage>


GeoServer Admin 페이지 확인

참고

profile
백엔드를 계속 배우고 있는 개발자입니다 😊

0개의 댓글