Commit graph

246 commits

Author SHA1 Message Date
gyson
1be333ca31 change respond() to a regular function
remove `yield* next` in lib/application, which caused annoy `A promise
was converted into a generator …` message.

benchmark result:
* when bench with native Promise, it has no impact for both stable and
experimental ones.
* when bench with Bluebird, it’s about 5-10% faster than original for
both stable and experimental ones.

closes #472
2015-08-23 13:55:20 -07:00
AlexeyKhristov
8804b7ba6f add this.req check for querystring() 2015-08-22 14:40:36 -07:00
Sterling Williams
391650518f Do not log on expected http errors 2015-08-22 14:39:38 -07:00
Aaron Heckmann
6392ee0407 return same object from request.query
Before this change, calling request.query when there was no querystring
resulted in a new object created and returned each time. If the resulting
object was ever changed, accessing request.query would not reflect it and
cause weird bugs.
2015-05-21 12:55:58 -07:00
dead_horse
c8eb5eefb1 make sure helpers return strict string 2015-04-29 01:44:02 +08:00
dead_horse
1c5cb6f691 feat: alias response.headers to response.header 2015-04-23 17:28:31 +08:00
dead_horse
b6aea969f8 non-error thrown, fixed #432 2015-04-14 10:34:55 +08:00
fengmk2
dd3a0fcdfa make sure req.host and req.hostname return strict string
Should return empty string when no host present.
2015-03-30 17:44:32 +08:00
fengmk2
8b14b91bae remove body empty detect 2015-03-29 14:40:09 +08:00
fengmk2
1edd6ec69a test: improve test coverage for application and response 2015-03-29 14:40:09 +08:00
Jonathan Ong
c5545cd918 add experimental async function support 2015-02-14 17:33:08 -08:00
Douglas Christopher Wilson
9dd99f5da2 Parse Content-Type with "content-type" instead of "media-typer" 2015-02-07 21:24:04 -05:00
Jonathan Ong
5b7587bb7e use Object.setPrototypeOf() instead of __proto__ 2015-02-01 16:39:44 -08:00
Jesus Rodriguez
68843e0cb3 Remove unused imports and exports 2015-01-29 15:39:06 -08:00
Jesús Rodríguez Rodríguez
6c340455f8 Change request's "ips" regex to match others.
So I am in this silly quest of cloning the repo, deleting all the code on it and rewriting it again step by step to pass the tests. It is a acceptable way to learn how koa works.

Anyway, I saw that the regex used in `ips` doesn't match the others on the file, so I thought it would be good to change it.
2015-01-29 17:51:09 +01:00
TJ Holowaychuk
255a39b876 refactor res.append()
OCDOCDOCD
2015-01-27 10:14:57 -08:00
dead_horse
5a3f32dfdd Add res.append(field, val) to append headers 2015-01-26 02:20:08 +08:00
Rui Marinho
d108926f46 Fix url.format usage of path on node@0.11.15
node@0.11.15 was released with a patch that adds support for `path` to
url.format
(d312b6d15c).

However, this broke `npm install` for git+ssh urls and as such has been
reverted on io.js, making it work like on node@0.11.14 again.

913addbff5
2015-01-23 02:09:21 +00: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
TJ Holowaychuk
e4076ce930 remove x-powered-by. Closes #372 2014-12-04 01:01:57 -08:00
zensh
28ec7892a8 remove unnecessary "require('http')" 2014-11-29 09:42:01 +08:00
dead_horse
57eb6a10df set content-type for redirect when accpect plain 2014-11-27 09:25:44 -08:00
TJ Holowaychuk
b854d00363 Merge pull request #366 from MatthewMueller/master
add: ctx.locals as a recommended namespace for passing information to the frontend
2014-11-18 08:19:19 -08:00
Matthew Mueller
6847fe68bd added: ctx.state as the recommended namespace for passing information through middleware and routes. 2014-11-18 00:54:14 -08:00
dead_horse
3f183a196b upgrade co@4 2014-11-17 21:21:00 +08:00
dead_horse
eff4886cd8 ocd 2014-11-16 21:52:14 +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
fengmk2
cca2438f64 ctx.attachment support no-ascii filename 2014-09-19 13:46:08 +08:00
TJ Holowaychuk
7b3e3cbad5 add fn assertion to app.use(). Closes #337 2014-08-20 13:28:34 -07:00
Jonathan Ong
9455726c00 finished -> on-finished
removes the writable test because it’s fake and there are tests for
on-finished for this case
2014-08-16 02:58:06 -07:00
Jonathan Ong
920909c546 dethroy -> destroy 2014-08-14 23:34:25 -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
dead_horse
fd019688ec use parseurl 2014-07-14 17:57:03 +08:00
dead_horse
5b18f8bab0 parse req.type by media-typer 2014-07-09 23:52:56 +08:00
Jonathan Ong
690604b6d2 remove this.error()
it’s been deprecated for long enough
2014-07-06 02:36:12 -07:00
dead_horse
e791100993 add more test case, fix req.idempotent 2014-07-06 16:52:02 +08:00
Jonathan Ong
31ba115231 res: add .is() 2014-06-13 00:30:59 -07:00
TJ Holowaychuk
696d55d73b refactor res.status= 2014-06-10 14:33:13 -07:00
TJ Holowaychuk
ed8beb7d79 Merge pull request #299 from tmilewski/remove-status-as-string
remove .status=string
2014-06-10 14:32:13 -07:00
TJ Holowaychuk
71536b35be remove res.statusString 2014-06-10 14:31:41 -07:00
tmilewski
c2322f2b3d remove .status=string #298 2014-06-10 16:38:25 -04:00
Jonathan Ong
4a6b49cd30 delegate: remove this.append() 2014-06-07 03:48:03 -07:00