Julian Squires
2a76cb906c
http.lua: set transfer-encoding if source and no content-length
If a source is specified without a content-length header, LuaSocket sends the data in the chunked transfer coding; however, it doesn't set the transfer-encoding header. While I recognize that the user can set this manually, this is a gotcha that has caught me multiple times. RFC7230, section 3.3.3 (https://tools.ietf.org/html/rfc7230#section-3.3.3) is clear about this; if neither content-length nor transfer-encoding chunked are specified, the request message body length is zero. While some servers may ignore this, I have encountered several that follow the RFC in this regard, most recently golang's net/http.
This is the LuaSocket 3.0-rc1. It has been tested on Windows 7, Mac OS X, and Linux. Please use the project page at GitHub https://github.com/diegonehab/luasocket to file bug reports or propose changes. Have fun, Diego Nehab.
Description
Languages
HTML
48.6%
C
27.1%
Lua
22.7%
Makefile
1.4%