Commit Graph

26 Commits

Author SHA1 Message Date
Travis Reeder
96cfc9f5c1 Update json (#463)
* wip

* wip

* Added more fields to JSON and added blank line between objects.

* Update tests.

* wip

* Updated to represent recent discussions.

* Fixed up the json test

* More docs

* Changed from blank line to bracket, newline, open bracket.

* Blank line added back, easier for delimiting.
2017-11-16 09:59:13 -08:00
Denis Makogon
ce25adfddb JSON protocol updating (#426)
* JSON protocol updating

 this patch adds HTTP query string into payload (see more TODOs in code)
 adds one more test to verify query

* Fixing FMT
2017-10-12 23:10:21 +03:00
Denis Makogon
22b5140f56 Do not expect function to set response code 2017-10-07 03:07:21 +03:00
Denis Makogon
e4684096f7 Fmt and docs 2017-10-07 02:59:08 +03:00
Denis Makogon
6141344e5f Error before sending json object if something bad happend with reading a request body 2017-10-07 02:33:43 +03:00
Denis Makogon
6682de4768 Addressing comments 2017-10-07 02:28:56 +03:00
Denis Makogon
181ccf54b4 Addressing more comments + tests 2017-10-07 02:11:49 +03:00
Denis Makogon
9f3bfa1005 Read request body and see if it's not empty then decide whether write it or not 2017-10-07 01:24:43 +03:00
Denis Makogon
b4b5302a44 Addressing certain comments from last review 2017-10-07 01:20:53 +03:00
Denis Makogon
de7b4e6067 Returning error instead of writing it to a response writer 2017-10-07 00:52:01 +03:00
Denis Makogon
7dd9b5a4cd We still can write JSON request object in parts
except just copying content from request body to STDIN
  we need to write encoded data,
  so we're using STDIN JSON stream encoder.
2017-10-07 00:43:09 +03:00
Denis Makogon
588d9e523b Do not forget to close request body 2017-10-07 00:43:09 +03:00
Denis Makogon
c2ee67fb21 Revisiting request body processing 2017-10-07 00:43:09 +03:00
Denis Makogon
1f589d641e Let function write headers to a response 2017-10-07 00:43:09 +03:00
Denis Makogon
caf1488dd9 Make Dispatch cleaner 2017-10-07 00:43:09 +03:00
Denis Makogon
2250e1d08c Get rid of content-length-based copying 2017-10-07 00:43:08 +03:00
Denis Makogon
1cdd241920 Trying to avoid buffers and write directly to pipe
this change makes Dispatch write request body and
 http headers directly to pipe one by one
 in case of non-empty request body,
 if not - write headers and close finalize JSON
2017-10-07 00:43:08 +03:00
Denis Makogon
955b294bc6 Trying to avoid any buffering 2017-10-07 00:43:08 +03:00
Denis Makogon
da9629d8dc Use STDIN as writer for encoding func's JSON input data instead of buffering 2017-10-07 00:43:08 +03:00
Denis Makogon
0316cd90a1 Dismiss redundant function 2017-10-07 00:43:08 +03:00
Denis Makogon
3fb040f293 Addressing comments
What's new?
  - unmarshal JSON response only in case of HTTP response writer
2017-10-07 00:43:07 +03:00
Denis Makogon
783490dc79 Addressing certain comments
What's new?
 - better error handling
 - still need to decode JSON from function because we need status code and body
 - prevent request body to be a problem by deferring its close
 - moving examples around: putting http and json samples into one folder
2017-10-07 00:43:07 +03:00
Denis Makogon
1882845a61 Respond with any error that happends during JSON dispatching 2017-10-07 00:43:07 +03:00
Denis Makogon
3da9ad4328 Using io.LimitReader as the way to control size of request body with respect to content length 2017-10-07 00:43:07 +03:00
Denis Makogon
ecaa5eefbf Cleaning up code
Getting rid of request url, call id, method: all of them are
 redundant and available through env
2017-10-07 00:43:07 +03:00
amykang2020
b6b9b55ca9 apply/make Travis's json-format branch prototype to work with latest restructured master; added StatusCode to JSONOutput server-function contract 2017-10-07 00:43:07 +03:00