0.6.0 • Published 7 years ago

appframe-express v0.6.0

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

appframe-express

Express Plugin for Appframe on NPM. This currently does not support SSL.

API

This api is mounted at app.server as a new express app. Also mounts app.joi for validation. Has following methods:

app.server.validate(fields)

Middleware to validate fields on requests.

  • fields object - Key value where key is fieldname and value is joi validation object
app.server.post('/validate', app.server.validate({
        body: {
            user: app.joi.string().required(),
            email: app.joi.string().email(),
        }
    }), function(req, res){
        if(req.body.user.length < 2){
            return res.invalid({
                'user': app.code('user.username_invalid') // this code is not included
            });
        }
        res.success('server.status_200', req.body);
    });

// outputs
{
    "code": "server.validation",
    "message": "There was a problem with your request. Please check the errors provided.",
    "success": false,
    "data": {
    "fields": {
        "user": {
            "type": "custom_message",
            "message": "Provided username is invalid."
        }
    }
    },
    "error": false
}
response.invalid(fields)

Throws a validation error on the fields.

  • fields object - Key value where key is fieldname and value is string error or app.code object
res.invalid({
    user: 'Provided username is invalid.'
});

// outputs
{
    "code": "server.validation",
    "message": "There was a problem with your request. Please check the errors provided.",
    "success": false,
    "data": {
    "fields": {
        "user": {
            "type": "custom_message",
            "message": "Provided username is invalid."
        }
    }
    },
    "error": false
}
response.fail(error [, data])

Outputs JSON object with code, message, and optional data.

  • error mixed - This corresponds an error code string, error code object, errorCode appframe Error, failCode appframe Error, or registered error from within appframe.
  • data any - This is attached to the JSON reply as response.data
if(user === null){
    var error = app.failCode('user.not_found');
}
res.fail(error);

// outputs
{
    success: false,
    error: false,
    code: "user.not_found",
    message: "No user found by given id.",
    data: null
}

##### `response.success(code [, data])`
Outputs JSON object with code, message, and optional data.
 - `code` *string* - This corresponds with an appframe code to populate response
 - `data` *any* - This is attached to the JSON reply as `response.data`

```javascript
res.success('user.found', {user: user});

// outputs
{
    success: true,
    code: "user.found",
    message: "The user was found by given id.",
    data: {
        user: {...}
    }
}
response.fail(error [, data])

Outputs JSON object with code, message, and optional data.

  • error mixed - This corresponds an error code string, error code object, errorCode appframe Error, failCode appframe Error, or registered error from within appframe.
  • data any - This is attached to the JSON reply as response.data
if(user === null){
    var error = app.failCode('user.not_found');
}
res.fail(error);

// outputs
{
    success: false,
    error: false,
    code: "user.not_found",
    message: "No user found by given id.",
    data: null
}

Config server.json5

  • host String - HTTP server host address to bind on. Defaults to 127.0.0.1.
  • port String - HTTP server port number to bind on. Defaults to 8080.
  • handle_error Boolean - Automatically handle internal errors and 404 with generic JSON response codes. Defaults to True
0.6.0

7 years ago

0.5.3

7 years ago

0.5.2

7 years ago

0.5.1

7 years ago

0.5.0

7 years ago

0.4.11

7 years ago

0.4.10

7 years ago

0.4.9

8 years ago

0.4.8

8 years ago

0.4.7

8 years ago

0.4.6

8 years ago

0.4.5

8 years ago

0.4.4

8 years ago

0.4.3

8 years ago

0.4.2

8 years ago

0.4.1

8 years ago

0.4.0

8 years ago

0.3.2

8 years ago

0.3.1

8 years ago

0.3.0

8 years ago

0.2.6

8 years ago

0.2.5

8 years ago

0.2.4

8 years ago

0.2.3

9 years ago

0.2.2

9 years ago

0.2.1

9 years ago

0.2.0

9 years ago

0.1.11

9 years ago

0.1.10

9 years ago

0.1.9

9 years ago

0.1.8

9 years ago

0.1.7

10 years ago

0.1.6

10 years ago

0.1.5

10 years ago

0.1.4

10 years ago

0.1.3

10 years ago

0.1.2

10 years ago

0.1.1

10 years ago

0.1.0

10 years ago