Commit Graph

94 Commits (c021b4610d06ae298c14afe358797631e703ac9d)

Author SHA1 Message Date
dead_horse b6aea969f8 non-error thrown, fixed #432 2015-04-14 10:34:55 +08:00
dead_horse 5a3f32dfdd Add res.append(field, val) to append headers 2015-01-26 02:20:08 +08:00
fengmk2 3e66157472 ctx.request.href: get full request url, include `protocol`, `host` and `originalUrl`
Useful on those scenes need current full request url, like `OAuth`.
2014-12-27 14:17:00 -08:00
dead_horse efdd7d3716 less strict for status, close #350
add res.message[=]
2014-10-09 23:20:53 +08:00
Jonathan Ong 2f0fe55ae3 .throw() -> http-errors, .assert() -> http-assert 2014-09-20 10:46:28 -07:00
Ian Storm Taylor 5931714bd8 make the second argument to throw properly optional 2014-08-12 13:19:14 -07:00
dead_horse f6626967b2 ignore props.status in ctx.throw 2014-08-09 13:38:54 +08:00
Ian Storm Taylor bcac468f7c add the ability to pass `props` to `context.throw` 2014-08-08 12:37:04 -07:00
TJ Holowaychuk f9eb219ecf Merge pull request #330 from dead-horse/onerror-status
Onerror status
2014-08-07 19:04:10 -07:00
dead_horse fa5948cca3 do not expose when err.status not valid 2014-08-08 10:02:24 +08:00
dead_horse 5ca9f451a7 alias request.headers as request.header 2014-08-07 00:04:21 +08:00
dead_horse e2f61595b8 fix err.status invalid lead to uncaughtException 2014-08-06 21:32:35 +08:00
Jonathan Ong 1605f33760 add context.inspect(), cleanup app.inspect()
closes #323 closes #250
2014-08-02 18:24:53 -07:00
Jonathan Ong 690604b6d2 remove this.error()
it’s been deprecated for long enough
2014-07-06 02:36:12 -07:00
Jonathan Ong 4a6b49cd30 delegate: remove this.append() 2014-06-07 03:48:03 -07:00
Jonathan Ong dc59a604e5 Merge pull request #292 from koajs/context-delegate
context: delegate etag/last-modified
2014-06-07 03:39:19 -07:00
Jonathan Ong 01dd6a33c5 context: delegate etag/last-modified 2014-06-05 16:19:29 -07:00
dead_horse 4979077562 assert non-error obj pass to app.onerror, fixed #287 2014-06-04 14:16:25 +08:00
dead_horse f76268ba58 remove req.host=, fix docs 2014-05-05 12:45:33 +08:00
TJ Holowaychuk 4ff54e5c13 ocd 2014-05-01 16:25:08 -07:00
TJ Holowaychuk 94dd87741e ocd 2014-04-24 17:58:37 -07:00
dead_horse 6a2ed3e6eb assert object type in ctx.onerror 2014-04-25 08:34:11 +08:00
dead_horse 5de9d962a0 remove unused debug 2014-04-25 00:07:37 +08:00
TJ Holowaychuk dfe8e95be4 remove ctx.inspect() implementation. Closes #164
obscures user-defned properties. ideally we fix it so .req / .res are not so verbose but meh for now
2014-04-05 19:15:14 -07:00
New Now Nohow 0a223f2bb7 Let errors provide their own status.
When calling `ctx.throw`, you're allowed to provide an error object and a
status code. The status code is later set as the `status` property of the error
object. If no status code is provided, it defaults to 500. However, this
happens even if the error object already had a `status` property.

This commit allows an error's pre-existing `status` property to be used in
conjunction with `ctx.throw`.

If the status code is below 500, the error message will be exposed to the user
in the HTTP response. It would be nice to have some Error subclasses that
always have the same status code, because then we could just write
`ctx.throw(new WhateverError())`, and define which 4xx error code we want in
the definition of `WhateverError` itself. If, for example, an
`AuthenticationError` is always meant to go along with a 401, then it would be
nice to just have that knowledge in the class definition.
2014-03-06 22:54:25 -05:00
TJ Holowaychuk b1f0abd16d Revert "add response.charset accessor and ctx.charset alias"
This reverts commit 94413b1bd4.
2014-03-06 18:05:01 -08:00
dead_horse 72a9b69146 add request.hostname(getter), fixed #224
make request.host and request.hostname work as node url lib
http://nodejs.org/api/url.html#url_url
this commit will change older request.host(getter)
2014-02-26 14:03:05 +08:00
Jonathan Ong cb532b7bef this.writable to check if the socket is writable
because node sucks haha
2014-02-15 02:06:08 -08:00
TJ Holowaychuk 94413b1bd4 add response.charset accessor and ctx.charset alias 2014-02-14 09:33:10 -08:00
TJ Holowaychuk 08149052fa change ctx.length and ctx.type to always delegate to response object [breaking change] 2014-02-14 09:16:39 -08:00
Jonathan Ong 2d1147ed21 context.onerror: fix response handling
closes #199
2014-01-24 14:29:57 -08:00
TJ Holowaychuk 0610a841df change ctx.throw() to no longer .expose 5xx errors. Closes #197 2014-01-20 18:44:07 -08:00
TJ Holowaychuk 3bb7a63b77 ocd 2014-01-13 06:36:49 -08:00
TJ Holowaychuk 53b1b8133c refactor with delegation utility 2014-01-13 06:36:10 -08:00
TJ Holowaychuk 26fb6a138a add ctx.host= delegate 2014-01-07 17:22:46 -08:00
Veselin Todorov 6cd4c776f8 context.throw supports Error instances 2014-01-04 10:28:24 +02:00
TJ Holowaychuk 7c3181e4d7 fix ctx.inspect() after previous commit
otherwise .body will be missing
2013-12-29 11:20:51 -08:00
TJ Holowaychuk 14fe56e632 add explicit .toJSON() calls to ctx.toJSON() 2013-12-29 10:19:21 -08:00
TJ Holowaychuk 88fb4c841d remove trailing comma 2013-12-29 05:46:12 -08:00
TJ Holowaychuk 87c03aff61 add support for .throw(status, msg). Closes #130 2013-12-20 15:34:16 -08:00
Jonathan Ong 879293f548 use on-socket-error 2013-12-20 14:39:53 -08:00
TJ Holowaychuk 171892c669 fix: cleanup socker error handler on response 2013-12-19 08:53:48 -08:00
Eivind Fjeldstad ddde5f96ef add deprecation warning for ctx.error
Didn't notice the change until now. A warning would be useful
2013-12-19 11:48:32 +01:00
TJ Holowaychuk 1769f9c431 add socket error-handling. Closes #114 2013-12-17 17:37:35 -08:00
Jonathan Ong 0c330ffb1a lint: remove unused references, fix global leak 2013-12-09 01:53:18 -08:00
TJ Holowaychuk e78349a73d refactor ctx.toJSON() to recurse. Closes #108 2013-12-02 09:08:01 -08:00
TJ Holowaychuk 8e10f12d38 add ctx.remove() and res.remove(). Closes #100 2013-11-24 05:06:35 -08:00
Jonathan Ong 9d7dd437d7 context delegates: response.lastModified and response.etag
only doing setters because i think getters would be pretty confusing.
2013-11-20 14:09:49 -08:00
Jonathan Ong 28ca80758b ctx.search and ctx.request.search 2013-11-18 19:29:29 -08:00
Jonathan Ong 7d9c6ba66c context: .error() -> .throw()
.error() still works for compatibility, but it will be removed in the
future. closes #94
2013-11-18 17:38:12 -08:00