Embedded Viewer - Embedded Document Displaying

You can call the existing GEODI Document Viewer from a different application and use it in an HTML iframe tag. This way you can display documents directly inside your software.

(!) By default, serving GEODI in an iframe via an external domain is disabled. You can configure the allowed domains to use iframe by using the System Configuration - Security Settings page.

GEODI Viewer GUI
Request

[GEODIURL]/DefaultContentViewer?wsName=[wsName]&q=[Query]

[GEODIURL]/DefaultContentViewer?wsName=[wsName]&unc=[UNC]

[GEODIURL]/DefaultContentViewer?wsName=[wsName]&relation_id=[relation_id]

[GEODIURL]/DefaultContentViewer?wsName=[wsName]&content_id=[content_id]

  • wsName: project name containing the document. (short for workspace)
  • force(optional): When force=1 is passed, the ViewURL specified during Feed is not used. The document is opened with the GEODI viewer.
  • Parameters other than wsName and force should not be used together. GEODI will only use one parameter to find the document and the others will be ignored.
  • q: The parameter that takes the Geodi query. The system tries to match the location of the text that matches the query with its display priority. For query text syntax rules, see /wiki/spaces/DESTEK/pages/52920567.
  • unc: ContentID that is transmitted via feed services, the path of the file on the disk can be used.
  • relation_id: Obtained only via Geodi Query API ( Query ). It contains information about the content found and information about its location in the content.
  • content_id: Obtained only via Geodi Query API ( Query ). The content inside GEODI is the id value.
HttpMethodGET
Expected Errors

401 Unauthorized access / Access denied

403 Forbidden

511 Network Authentication Required

Usage Examples
<iframe src="[GEODIURL]/DefaultContentViewer?wsName=PROJECT&q=QueryText"></iframe>
<a href="[GEODIURL]/DefaultContentViewer?wsName=PROJECT&q=QueryText" target="_blank">...</a>
<div onclick="window.open('[GEODIURL]/DefaultContentViewer?wsName=PROJECT&q=QueryText')" >...</div>

In order to get the same result in all browsers, wsName and Query parameters must be passed via URL encoding.

The following script can be used in HTML content for Url Encode operations:   

( For .Net System.Web.HttpUtility.UrlEncode method is already available  )

<script>
	function UrlEncode(val) { return window.encodeURIComponent ? window.encodeURIComponent(val) : val.replace(/&/g, '%26'); }
<script>