Chrome Plugin for ArcGIS Server REST Services

Ken Doman

ESRI Developer Summit

March 7, 2018

http://slides.com/raykendo/map-services-enhanced

Introduction

  • Problems
    • Determining point-of failure for ArcGIS Web Applications
    • Check health of map services and data
  • ESRI REST Diagnostics
  • Aftermath

Chrome Extension Advantages

  • Popular browser with continual updates
  • Single platform (no hacks for IE7 or Safari)
  • Modern JavaScript (ES5)
  • Only active if tab URL matches a specific format from manifest

Features

Popup

Display metadata

Spatial References

Feature Counts

Counts by Field

Counts by Domain

Query Helper

Find Helper

Print Task Helper

On Page

Options

Toggle Metadata scan

Toggle count scans

Autofill Query Page

Autofill Print Task

Search all Services

URL Shortener

Map Services Enhanced

On Page Data

When user visits ArcGIS Server REST End-point, MSE will:

  • Request JSON data from all service links on the page
  • Attach relevant service metadata after the links
    • Color-coded spatial references
    • Collapsible displays list metadata in a readable format
  • This can be turned off in options

Map Services Enhanced

Additional Map and Feature Service Data

If viewing a map service or feature service page, MSE will also:

  • Query each layer for the number of features present
  • Query each layer for the number of features with non-null geometry
  • This can be turned off in the options

Map Services Enhanced

Additional Layer Data

If viewing a single map service or feature service layer, MSE will also:

  • Query the service to get counts of fields that are not null
  • If domains are present, will query for counts of each domain item
  • This can be turned off in the options

Map Services Enhanced

Options

Access Map Services Enhanced options by right-clicking the icon, then selecting Options from the menu.

  • Toggle metadata collection
  • Toggle feature queries an domain queries
  • Auto fill in a WebMapAsJSON value for Print Tasks
  • Auto fill in a where clause for Query pages
  • Set whether Query All buttons use GET, POST, or neither.

Map Services Enhanced

Query Helper

If viewing a service layer's query page:

  • Displays a "Select by Attribute" style control on the right hand side of the page
  • Can select field names and values from drop down menus
  • Easy query building buttons
  • Some one-click buttons to query everything

Map Services Enhanced

Find Helper

If viewing a service's Find page:

  • Requests metadata about the service
  • Can select service layers, field names, and values from drop down menus
  • Auto fill in layer ids

Map Services Enhanced

Print Tasks Made Easy

If viewing an Export Web Map Task

  • Requests task data from server
  • Auto fill in WebMapAsJSON from options for testing
  • Replaces the Format text blank with a select item containing supported formats
  • Replaces the Layout text blank with a select item containing supported layouts.

Map Services Enhanced

Popup items

Access popup by left-clicking the icon. 

  • URL Shortener - Demo Link
    • Removes default & empty query parameters from URL
    • Copy to Clipboard option
  • Service Search - Demo Link
    • Scrapes REST JSON from services and subfolders
    • matches text to service names, descriptions, field names, aliases, etc.

Map Services Enhanced

Future Enhancements

  • Map Viewer
  • Identify Helper
  • Geometry JSON filler
  • Spatial Reference Dropdown
  • Rearranging REST HTML items
  • i18n
  • Suggestions from you!

Resources

Special Thanks

Contributors in code and feedback

Ryan Davison

Bruno Caimar

Gavin Rehkemper

Steve Ptak

GEO Jobe

Bruce Harris and Associates

#GISTribe on Twitter

Map Services Enhanced

By Ken Doman

Map Services Enhanced

A Chrome Plugin for examining and troubleshooting ArcGIS Server REST endpoints.

  • 914