Made HTTP_DATE.append_...to...string more flexible by acception STRING_GENERAL,
so it is possible to append to STRING_32 (further more, it avoid potential implicit conversion)
Added WSF_REQUEST.percent_encoded_path_info: READABLE_STRING_8
to keep url encoded path info, as it is useful for specific component
The router is now using WSF_REQUEST.percent_encoded_path_info
since URI_TEMPLATE are handling URI (and not IRI)
this fixes an issue with unicode path parameters.
This should not break existing code, and this fixes various unicode related issues related
to PATH parameter and path info
but also any component using file names.
(required EiffelStudio >= 7.2)
before it was storing some header in the body.
now we added redirections: .. which is a list of redirection informations:
- status line
- header
- and eventual redirection body (but at least by default, libcurl does not cache body)
Enhanced the http_client library to be able to write directly the downloaded data into a file (or as convenient thanks to agent).
This is mainly a refactoring that is useful for an upcoming PR
regarding CORS (smaller patches are better...)
Note that this also fixes a small typo where an extra space was
added when calling {HTTP_HEADER}.put_allow
Initial support for the Cross-Origin Resource Sharing specification.
This allows JavaScript to make requests across domain boundaries.
Also reviewed the filter example to get rid of the context and
the generic classes (we can actually use {WSF_REQUEST}.execution_variable
and {WSF_REQUEST}.set_execution_variable).
Links:
* How to enable server-side: http://enable-cors.org/server.html
* Specification: http://www.w3.org/TR/cors/
* Github: http://developer.github.com/v3/#cross-origin-resource-sharing