.Net Integration Module Http Handlers

2013-04-30

Background

Http handlers in the .Net Integration Module handle special requests for content that ranges from stylesheets, javascripts, registration of click tracking events, query completion, cached pages, file meta data and more.

As of version 4.2.55.1, the http handlers were changed to improve the usage thereof, as well as improving the readability of the url.

Instead of

http://host/h.siteseeker?sht=4,

we now provide a more readable url like

http://host/clicktracking.siteseeker

The changes have been highlighted in each url in the section "Latest http handlers" further down.

Below follows an explanation of breaking url changes to a few of the http handlers, as well as the url formats for the new http handlers.

It is highly recommended that you use the correct html helper to render the url. Manually constructing a url for an http handler is not recommended for the reasons that url formats might change and not be upgraded automatically.

Breaking Changes

The following urls are not supported as of version 4.2.55.1:

CSS handler:

http://host/h.siteseeker?sht=1

JS handler:

http://host/h.siteseeker?sht=2

The above have all been combined into the EmbeddedResource handler as described below.

Latest http handlers

1) CachedPage:

This handler renders a cached page.

It is used by this html helper:

htmlHelper.CachedPage();

Current Format:

http://host/cachedpage.siteseeker?sn=<searchIndexName>&query=<query>&hu=<hitUrl>&ohn=<ordinalHitNumber>&rid=<responseId>&sl=<searchLanguage>

Deprecated:

http://host/h.siteseeker?sht=3&sn=<searchIndexName>&query=<query>&hu=<hitUrl>&ohn=<ordinalHitNumber>&rid=<responseId>&sl=<searchLanguage>

2) ClickTracking:

This handler registers different types of actions ranging from clicks to conversions.

It is used by clickregistration JavaScript methods. There is no html helper that utilises this.

Current Format:

http://host/clicktracking.siteseeker/<clickRegistrationType>?hu=<hitUrl>&rid=<responseId>&si=<sessionId>&pisr=<positionInSearchResult>

<clickRegistrationType> can be any of the following values:

  • Hit
  • BestBet
  • PageLoad
  • Conversion

Deprecated:

http://host/h.siteseeker?sht=4&crts=<clickRegistrationTypeId>&hu=<hitUrl>&rid=<responseId>&si=<sessionId>&pisr=<positionInSearchResult>

3) DiagnosticsPage:

This handler renders a diagnostics page that shows the configuration of bootstrapped search indices.

It is used by this html helper:

htmlHelper.RenderDiagnosticsPage();

Current Format:

http://host/diagnosticspage.siteseeker

Deprecated:

http://host/h.siteseeker?sht=8

4) EmbeddedResource:

This handler is used to serve up different combinations of javascript files or stylesheets embedded within SiteSeeker.dll. It provides ways to serve just the necessary files for the task, instead of returning many javascripts and stylesheets that may not be used at all. It also compresses and minifies the files, allowing for better bandwidth utilization.

Html helpers that use this handler are:

htmlHelper.SiteSeeker_Javascripts();
htmlHelper.SiteSeeker_AutoComplete_Javascripts();
htmlHelper.SiteSeeker_ClickTracking_Javascripts();
htmlHelper.SiteSeeker_Css();

Current Format:

http://host/embeddedresources.siteseeker/<resourceType>

<resourceType> can be any of the following values:

  • js
  • css
  • image

For js and css the additional required parameters are:

http://host/embeddedresources.siteseeker/<js or css>?fid=<commaDelimitedListOfFiles>&sn=<searchIndexName>&min=<shouldMinify>&vs=<version>

<commaDelimitedListOfFiles> can contain any combination of the following as a comma delimited list:

For js:

  • jquery
  • autocomplete
  • clickregistration
  • siteseeker
  • showcache

For css:

  • siteseeker
  • autocomplete
  • showcache

Examples:

http://host/embeddedresources.siteseeker/js?fid=jquery,autocomplete,clickregistration,siteseeker&sn=<searchIndexName>&min=<shouldMinify>&vs=<version>

http://host/embeddedresources.siteseeker/css?fid=siteseeker,autocomplete&sn=<searchIndexName>&min=<shouldMinify>&vs=<version>

<version> is used to control the caching of the link if caching is enabled. The html helper uses the assembly version. So whenever the assembly is newer, the link will expire and be refreshed and cached again.

For image, the url format is:

http://host/embeddedresources.siteseeker/image?f=<fileName>

Deprecated:

http://host/h.siteseeker?sht=5&f=<fileName>

Only the image supports a deprecated url format. js and css url formats do not support the previous format as previously described in breaking changes.

5) FileMetaData:

This handler generates meta data for a specified url or path.

There is no html helper that uses this handler.

Current Format:

http://host/filemetadata.siteseeker?path=<path>

or

http://host/filemetadata.siteseeker?url=<url>

Deprecated:

http://host/h.siteseeker?sht=7&path=<path>

http://host/h.siteseeker?sht=7&url=<url>

6) NonCachedJavascript

This handler generates non cached javascripts. This is to prevent issues with scripts that rely on session id's.

Html helpers that uses this handler are:

htmlHelper.SiteSeeker_Javascripts();
htmlHelper.SiteSeeker_AutoComplete_Javascripts();
htmlHelper.SiteSeeker_ClickTracking_Javascripts();

Current Format:

siteseeker: Renders the siteseeker object

http://host/noncachedjavascript.siteseeker/siteseeker?sn=<searchIndexName>&sl=<language>&bxs=<searchBoxSelector>&bts=<searchButtonSelector>

sessionid: updates sessionid

http://host/noncachedjavascript.siteseeker/sessionid

7) QueryCompletion

This handler facilitates auto completion of queries.

It is used by JavaScript methods. There is no html helpers that use this handler.

Current Format:

http://host/autocomplete.siteseeker?sn=<searchIndexName>&q=<query>&sl=<language>&limit=<numberOfItems>

Deprecated:

http://host/h.siteseeker?sht=6&sn=<searchIndexName>&q=<query>&sl=<language>&limit=<numberOfItems>