npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

hm-webui-httprequest

v0.0.4

Published

A hm-webui plugin to do easy http requests from a scripting language

Downloads

5

Readme

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

name | type | required | comment :---|:---|:---|:--- url | String | yes | the url (http:// ord https://) to get the data from options | Object | no | a object containing options for the http request (for details visit the Node HTTP documentation)

Returns

The function returns a promise with the following methods:

name | comment :--- | :--- .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

name | type | required | comment :---|:---|:---|:--- url | String | yes | the url (http:// ord https://) to send the data to payload | ObjectString | yes | the 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) options | Object | no | a object containing options for the http request (for details visit the Node HTTP documentation)

Returns

The function returns a promise with the following methods:

name | comment :--- | :--- .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