Applications wishing to support REST should subclass this class, implement the methods to be called, and define a UrlMap XDATA block which maps Urls and request Method (DELETE/GET/POST/PUT) to those methods. More...
Static Public Member Functions | |
_.Library.Boolean | AcceptsContentType (_.Library.String pType) |
This method tests the HTTP_ACCEPT header and returns true if. More... | |
_.Library.Status | AccessCheck (_.Library.Boolean pAuthorized) |
This method performs a basic access check. More... | |
_.Library.Status | DispatchRequest (_.Library.String url, _.Library.String method, _.Library.Boolean forwarded, args) |
Dispatch a REST request according to URL and Method. More... | |
_.Library.Status | Error (_.Library.Boolean skipheader) |
Called for a REST page in the event of an error being trapped by CSP server. | |
_.Library.String | GetAuthChallenge () |
This method determines what challenge will be sent with a 401 (Unauthorized) response. More... | |
_.Library.Status | Http403 (_.Library.Status pSC) |
Issue a '403' error (Deprecated, use ..ReportHttpStatusCode) | |
_.Library.Status | Http404 (_.Library.Status pSC) |
Issue a '404' error (Deprecated, use ..ReportHttpStatusCode) | |
_.Library.Status | Http405 (_.Library.String pSupportedVerbs) |
Issue a '405' error ( user can override) | |
_.Library.Status | Http500 (_.Exception.AbstractException pE) |
Issue a '500' error and give some indication as to what occurred. | |
_.Library.Status | Login (_.Library.Boolean skipheader) |
Called for a REST page in the event of a login being required. | |
_.Library.Status | OnPreDispatch (_.Library.String pUrl, _.Library.String pMethod, _.Library.Boolean pContinue) |
This method gets called prior to dispatch of the request. More... | |
_.Library.Status | Page (_.Library.Boolean skipheader) |
This method matches the request and method and calls the dispatcher. | |
_.Library.Status | ReportHttpStatusCode (pHttpStatus, _.Library.Status pSC) |
Issue an 'Http' error. | |
SetResponseHeaderIfEmpty (_.Library.String pHeader, _.Library.String pValue) | |
This utility method sets a response header only if it currently does not have a value. | |
_.Library.Status | StatusToJSON (_.Library.Status pSC, _.Library.DynamicObject pJSON) |
Render a Status as JSON. | |
_.Library.Status | StatusToProxyObject (_.Library.Status pSC, _.ZEN.proxyObject pJSON) |
Render a Status as JSON (in the form of an array of objects representing each status value). | |
_.Library.Status | SupportedVerbs (pUrl, _.Library.String pVerbs) |
This generator creates the SupportedVerbs Method used to determine supported verbs to return for the OPTIONS request. | |
![]() | |
DrawCSS3STYLE () | |
Draw the style definitions for the login page. More... | |
DrawHEAD (pTitle) | |
Draw the HEAD section of the login page. More... | |
DrawSTHEAD () | |
Draw the HEAD section of the security token page. More... | |
DrawSTTitle (_.Library.String pTitle) | |
Draw the title section of the security token page. More... | |
DrawSTYLE () | |
Draw the style definitions for the login page. More... | |
DrawTitle (_.Library.String pTitle) | |
Draw the title section of the login page. More... | |
DrawTitleSection (_.Library.String msgs) | |
Draw the title section of the page. More... | |
_.Library.Status | OnHandleCorsRequest (_.Library.String url) |
This is the CORS request handler. More... | |
_.Library.Status | OnHandleOptionsRequest (_.Library.String url) |
This methods provides handling of the options request for this CSP application. More... | |
_.Library.Status | OnPage () |
Output the default login page as HTML. | |
_.Library.Boolean | OnPreHTTP () |
Determine if we need login CSRF tokens and if so add them. More... | |
![]() | |
_.Library.Status | ConvertParameter (_.Library.String url, _.Library.String name, _.Library.String value) |
You pass this the <parameter>url</parameter> of the page you are going to and a. More... | |
_.Library.Binary | Decrypt (_.Library.String data) |
Decrypts the input string using the session.Key value that is unique to. More... | |
_.Library.String | Encrypt (_.Library.Binary data) |
Encrypts the input string using the session.Key value that is unique to this. More... | |
_.Library.String | EscapeHTML (in) |
This method converts input HTML text into Escaped HTML text. | |
_.Library.String | EscapeURL (_.Library.String in, _.Library.String charset) |
This method converts the in input URL string into Escaped URL string. More... | |
_.Library.String | HyperEventCall (_.Library.String methodName, _.Library.String args, _.Library.Integer type, _.Library.Boolean mobile) |
This method returns the string that needs to be written to the current. More... | |
_.Library.String | HyperEventHead (_.Library.Boolean iframeOnly, _.Library.Boolean strict, _.Library.Boolean optionalBroker) |
This method returns the string that needs to be written to the current. More... | |
Include (_.Library.String url) | |
Include another csp page or file in the output at this point. More... | |
_.Library.String | InsertHiddenField (_.Library.String url, _.Library.String name, _.Library.String value, _.Library.String extra) |
Inserts a '<input type="hidden" name="Name" value="Value">' tag into the current document. More... | |
_.Library.String | InsertHiddenFields (_.Library.String url, _.Library.String query) |
Return the string containing the hidden form tags. More... | |
_.Library.Boolean | IsPrivate () |
Returns 1 if this page is in fact a private page (see <parameter>PRIVATE</parameter>). | |
_.Library.String | Link (_.Library.String link, _.Library.String query, _.Library.Boolean addQ) |
Tranforms the link specified by link into a URL and returns it as a string. More... | |
_.Library.Status | OnHTTPHeader (_.Library.Boolean OutputBody) |
Event handler for PAGE event: this is invoked in order to More... | |
OnPageError (_.Library.Status sc) | |
Event handler for any error that occurs on the page. More... | |
OnPostHTTP () | |
Event handler for POSTPAGE event: this is invoked after the data. More... | |
_.Library.Status | OnPostHyperEvent (_.Library.String class, _.Library.String method) |
Event handler which is invoked after a hyperevent method is called on this page. | |
_.Library.Status | OnPreHyperEvent (_.Library.String class, _.Library.String method) |
Event handler which is invoked before a hyperevent method is called on this page. More... | |
_.Library.String | QuoteJS (in) |
This method converts input string into quoted JavaScript literal. | |
_.Library.String | RewriteURL (_.Library.String url) |
This method will rewrite a URL to use #url()# if needed. | |
ShowError (_.Library.Status sc) | |
Display a <class>Status</class> error code to the CSP Page. | |
StartTimer (_.Library.String name) | |
Used to get performance information on your CSP pages. More... | |
StopTimer (_.Library.String name) | |
Used to time performance information on your CSP pages. More... | |
ThrowError (_.Library.Status sc) | |
Passed a <class>Status</class> code this goes to the error page passing this status code. | |
_.Library.String | UnescapeHTML (in) |
This method converts Escaped HTML text into normal HTML text. | |
_.Library.String | UnescapeURL (_.Library.String in, _.Library.String charset) |
This method converts the in Escaped URL string back to its original form. More... | |
Static Public Attributes | |
HandleCorsRequest = None | |
This parameter influences the CORS support. More... | |
TokenLoginEndpoint = None | |
If the REST application is using token authentication, then this parameter gives the path to use for the "login" endpoint. More... | |
TokenLogoutEndpoint = None | |
If the REST application is using token authentication, then this parameter gives the path to use for the "logout" endpoint. More... | |
TokenRefreshEndpoint = None | |
If the REST application is using token authentication, then this parameter gives the path to use for the "refresh" endpoint. More... | |
TokenRevokeEndpoint = None | |
If the REST application is using token authentication, then this parameter gives the path to use for the token revocation endpoint. More... | |
UseSession = None | |
This parameter controls the CSP session support. More... | |
![]() | |
DOMAIN = None | |
Provide a default login and security-token pages for CSP applications. More... | |
FAVORITEICON = None | |
Home favorite icon. | |
HandleCorsRequest = None | |
This parameter influences the CORS support for the CSP application that has this login page assigned. More... | |
LOGINTITLE = None | |
Title displayed for login page. More... | |
STYLESHEET = None | |
Name of stylesheet used for login page. More... | |
![]() | |
CHARSET = None | |
The <CLASS>CSP.Page</CLASS> object serves as an event handler for CSP requests. More... | |
CONTENTTYPE = None | |
Specifies the default content type for the page. More... | |
CONVERTINPUTSTREAM = None | |
Specifies if input request.Content or request.MimeData values are converted from their. More... | |
CSPFILE = None | |
If this page was compiled from a .csp file, then this parameter contains the. More... | |
CSPSTRICT = None | |
The CSPSTRICT parameter is set to 1, if the DOCTYPE indicates that this. More... | |
CSPURL = None | |
This parameter is used to make sure that if multiple. More... | |
CSPXHTML = None | |
The CSPXHTML parameter is set to 1, if the DOCTYPE indicates that this. More... | |
DOMAIN = None | |
The default domain for csp:text, span and div tags. More... | |
ENCODED = None | |
Controls how the query parameters for this page are passed, it can. More... | |
ERRORPAGE = None | |
Specify a custom error page to call if there are any problems with generating this page. More... | |
EXPIRES = None | |
Specified the default value for the response.Expires. More... | |
NOCHARSETCONVERT = None | |
Specifies if we wish to turn off charset conversion for this page. More... | |
PAGETIMING = None | |
If this parameter is true then we automatically record timing statistics of how long it takes to. More... | |
PRIVATE = None | |
Controls the access to the page, it can be set to one of the following: More... | |
SECURITYRESOURCE = None | |
This is a comma-delimited list of system Resources and associated. More... | |
TIMINGSLOTS = None | |
Used by the timing to decide how many slots a day should be divided up into. More... | |
UseSession = None | |
This parameter controls the CSP session support. More... | |
Applications wishing to support REST should subclass this class, implement the methods to be called, and define a UrlMap XDATA block which maps Urls and request Method (DELETE/GET/POST/PUT) to those methods.
Users define a csp web application which will be serviced by their custom subclass. To achieve this, in the management portal set the 'Dispatch Class' to the name of the custom subclass of <class>CSP.REST</class>.
Note: CSP.REST extends CSP.Login instead of just CSP.Page because CSP.Login contains the default CORS support as well as being a subclass of CSP.Page.
|
static |
This method tests the HTTP_ACCEPT header and returns true if.
the passed content type is acceptable
|
static |
|
static |
Dispatch a REST request according to URL and Method.
The pArgs argument is a local array of parameters from the caller. The forwarded argument is no longer used.
|
static |
This method determines what challenge will be sent with a 401 (Unauthorized) response.
The default is the type of the Authorization header used in the request. For unauthenticated requests, the default is 'Basic'. Note most browsers will display a native login prompt in response to a 'Basic' challenge.
|
static |
This method gets called prior to dispatch of the request.
Put any common code here
that you want to be executed for EVERY request. If pContinue is set to 0, the request will NOT be dispatched according to the UrlMap. In this case it's the responsibility of the user to return a response.
|
static |
This parameter influences the CORS support.
The default is an empty string meaning 'not specified'.
If set to true (1) then CORS processing is ON. If set to false (0) then CORS processing is OFF. If left unset ("") then the decision to process CORS is delegated to the setting on the URL map route.
|
static |
If the REST application is using token authentication, then this parameter gives the path to use for the "login" endpoint.
The default is "/login".
|
static |
If the REST application is using token authentication, then this parameter gives the path to use for the "logout" endpoint.
The default is "/logout".
|
static |
If the REST application is using token authentication, then this parameter gives the path to use for the "refresh" endpoint.
The default is "/refresh".
|
static |
If the REST application is using token authentication, then this parameter gives the path to use for the token revocation endpoint.
The default is "/revoke".
|
static |
This parameter controls the CSP session support.
By default the CSP session will be
ended after each request in accordance with the spirit of REST. However this CAN be overridden by the user. To use a session, it's necessary to manage the CSPSESSION cookie. Browsers do this automatically but command line tools such as CURL require the setting of options.
Note that if you choose to use a session then this will use a CSP license until the session is ended or expires and the grace period has been satisfied. If you use the default of no session then this will be the same behavior as SOAP requests of holding a license for ten seconds.