Router

Router api class with functions for communication with the backend.

All router functions are available through the context.api.router object.

postBinary(path, file, onProgress, onLoad, onError, params)

Post a binary file object to the backend

Parameters

Param

Type

Description

path

string

Required -

file

object

Required - File object from file input or file drop

onProgress

function

Required - Callback function for progress event

onLoad

function

Required - Callback function for onload event

onError

function

Required -

params

function

Required -

post(path, parameters) ⇒ Promise.<Response>

Post data to specified backend endpoint

Parameters

Param

Type

path

string

parameters

object

put(path, parameters) ⇒ Promise.<Response>

Put data to specified backend endpoint

Parameters

Param

Type

path

string

parameters

object

get(path, parameters) ⇒ Promise.<Response>

Get data from specified backend endpoint

Parameters

Param

Type

Description

path

string

Required -

parameters

object

Required - Could contain headers that will be passed along parameters.headers

Example

import {api} from 'writer'

api.router.get('/api/binary/url/' + uuid)
    .then((url) => {
        // Handle url
    })
    .catch((error) => {
        console.error(error);
    });

Fetch specified backend endpoint using a http HEAD request. This is silent and will not produce any error messages.

Parameters

Param

Type

Description

path

string

Required -

parameters

object

Required - Could contain headers that will be passed along parameters.headers

Example

import {api} from 'writer'

api.router.head('/api/binary/url/' + uuid)
    .then((url) => {
        // Handle url
    })
    .catch((error) => {
        console.error(error);
    });

del(path, parameters) ⇒ Promise.<Response>

Make a DELETE call to a specified backend endpoint

Parameters

Param

Type

Description

path

string

Required - Backend endpoint

parameters

object

Required - Key value request parameters

proxy(path, op) ⇒ object

Deprecated

Proxy ajax call to external backend

Returns: object - jQuery ajax object

Parameters

Param

Type

path

string

op

object

getConceptItem(id, imType) ⇒ *

Fetch a ConceptItem from the backend

Parameters

Param

Description

id

Required - The id of the concept

imType

Required - The x-im/type

getNewsItem(id, imType) ⇒ *

Fetch a NewsItem from the backend

Parameters

Param

Description

id

Required - The id of the news item

imType

Required - The x-im/type

updateConceptItem(uuid, concept) ⇒

Updates a Concept Item

Returns: A promise with no data

Parameters

Param

Description

uuid

Required - The uuid of the Concept Item to update

concept

Required - The updated XML

createConceptItem(concept) ⇒ * | Promise.<TResult>

Creates a Concept Item

Returns: * | Promise.<TResult> - containing the resulting UUID

Parameters

Param

Description

concept

Required - The concept to create

checkForOKStatus(response) ⇒ *

Method checks for a status code between 200 and 299 Throws error if otherwise.

Use for example when you want to reject a fetch promise

Parameters

Param

response

Example

router.authorizedFetch(...)
    .then(response => checkForOKStatus(response))
    .then(response => toJson(response))
    .then(json => ...)
    .catch(error => ...)

~~toJson() ~~

Deprecated

Use native response.json() instead

authorizedFetch(url, params) ⇒ Promise.<*>

Parameters

Param

Type

url

params

object

Last updated