0.0.4 • Published 7 years ago

hm-webui-httprequest v0.0.4

Weekly downloads
1
License
MIT
Repository
github
Last release
7 years ago

Logo

HM WebUI HTTP Request Plugin

This plugin makes it easy to request data from webservers with a get or post request from another plugin (e.g. the HM WebUI Javascript Plugin).

Installation

In the Plugins section of HM WebUI create a new instance of the hm-webui-httprequest plugin.

There are no settings in the plugin settings screen.

Usage

The plugin is supporting the following functions:

get


Parameter

nametyperequiredcomment
urlStringyesthe url (http:// ord https://) to get the data from
optionsObjectnoa object containing options for the http request (for details visit the Node HTTP documentation)

Returns

The function returns a promise with the following methods:

namecomment
.then()Called when the data has been received successful. The first parameter of the promise function contains an object described below in the Result
.fail()Called when the data receiving failed. The first parameter of the promise function contains a string with detailed error message
.fin()Called always (on success and error)

Result

The .then() promise function is receiving the following result object:

{
  statusCode: 200, //the http statuc code
  statusMessage: 'Ok', //the http status message,
  headers: {}, //a object with all headers returned by the server,
  body: '' // the body is a parsed JSON object if the server is sending application/json in the Content-Type header otherwise it is a string
}

Example

Here an example how you can receive data from a server with the HM WebUI Javascript Plugin

//receive data with a get request
hmwebui.callPluginFunction('hm-webui-httprequest.0','get','http://www.google.de').then(function(result){
    //result is an object described above
}).fail(function(err){
    //err is a string with a detailed error message
});

post


Parameter

nametyperequiredcomment
urlStringyesthe url (http:// ord https://) to send the data to
payloadObjectStringyesthe data to send to the serverA object is transferred to x-www-form-urlencoded form and the Content-Type header is setIf you want to send the data as is then ou have to provide the data as string (e.g. use JSON.stringify(...) to transfer JSON data)
optionsObjectnoa object containing options for the http request (for details visit the Node HTTP documentation)

Returns

The function returns a promise with the following methods:

namecomment
.then()Called when the data has been sent successful. The first parameter of the promise function contains an object described below in the Result
.fail()Called when the data sending failed. The first parameter of the promise function contains a string with detailed error message
.fin()Called always (on success and error)

Result

The .then() promise function is receiving the following result object:

{
  statusCode: 200, //the http statuc code
  statusMessage: 'Ok', //the http status message,
  headers: {}, //a object with all headers returned by the server,
  body: '' // the body is a parsed JSON object if the server is sending application/json in the Content-Type header otherwise it is a string
}

Example

Here an example how you can send data to a server from the HM WebUI Javascript Plugin

//send data with a post request
hmwebui.callPluginFunction('hm-webui-httprequest.0','post','http://www.example.com/login','user=test&password=test').then(function(result){
    //result is an object described above
}).fail(function(err){
    //err is a string with a detailed error message
});

//send Object data with a post request
hmwebui.callPluginFunction('hm-webui-httprequest.0','post','http://www.example.com/login',{user: 'test', password: 'test'}).then(function(result){
    //result is an object described above
}).fail(function(err){
    //err is a string with a detailed error message
});

//send JSON data with a post request
hmwebui.callPluginFunction('hm-webui-httprequest.0','post','http://www.example.com/login',JSON.stringify({user: 'test', password: 'test'})).then(function(result){
    //result is an object described above
}).fail(function(err){
    //err is a string with a detailed error message
});

Changelog

0.0.4 (2017-01-22)

  • add post function

0.0.3 (2016-11-25)

  • small bugfix

0.0.2 (2016-11-18)

  • small bugfix

0.0.1 (2016-10-15)

  • initial version
0.0.4

7 years ago

0.0.3

8 years ago

0.0.2

8 years ago

0.0.1

8 years ago