[ 
https://issues.apache.org/jira/browse/THRIFT-2355?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Randy Abernethy updated THRIFT-2355:
------------------------------------

    Description: 
This patch adds support for SSL between Node.js and Browser JavaScript as well 
as initial WebSocket  transport support.

The createStaticHTTPThriftServer() method has been renamed createWebServer(). 
The resulting server supports XHR based HTTP:// and HTTPS:// clients as well as 
upgrades to WS:// and WSS:// for websocket clients. 

The JavaScript thrift.js library now includes websocket support through 
TWebSocketTransport. The old XHR transport still goes by the alias Transport 
but can now also be accessed through the name TXHRTransport. Browser clients 
can use XHR over HTTP and HTTPS (as always) and also WebSocket (WS://) and 
secure WebSocket (WSS://).

The JavaScript grunt build runs jQuery and Normal JavaScript synchronous and 
asynchronous tests over HTTP and HTTPS. There are now three test drivers in the 
thrift/lib/js/test directory:
  - test.html   the jQuery build test (thrift -gen js:jquery)
  - test-nojq.html   the normal JavaScript build test (thrift -gen js)
  - testws.html   the web socket test.

The thrift/test/keys directory supplies the key and cert for the HTTPS test 
server. 

The root js README was updated and contains a complete client/server example. A 
new README was added to the test directory providing an orientation there. 

With WebSocket in place it makes sense to consider adding a binary protocol on 
the browser side.

  was:
This patch adds support for SSL between Node.js and Browser JavaScript as well 
as initial WebSocket  transport support.

The createStaticHTTPThriftServer() method has been renamed 
createThriftWebServer(). The resulting server supports XHR based HTTP:// and 
HTTPS:// clients as well as upgrades to WS:// and WSS:// for websocket clients. 

The JavaScript thrift.js library now includes websocket support through 
TWebSocketTransport. The old XHR transport still goes by the alias Transport 
but can now also be accessed through the name TXHRTransport. Browser clients 
can use XHR over HTTP and HTTPS (as always) and also WebSocket (WS://) and 
secure WebSocket (WSS://).

The JavaScript grunt build runs jQuery and Normal JavaScript synchronous and 
asynchronous tests over HTTP and HTTPS. There are now three test drivers in the 
thrift/lib/js/test directory:
  - test.html   the jQuery build test (thrift -gen js:jquery)
  - test-nojq.html   the normal JavaScript build test (thrift -gen js)
  - testws.html   the (in progress) web socket test.

The thrift/lib/js/test/sec directory is new with a key.pem and cert.pem for the 
HTTPS test server. 

The root js README was updated and contains a complete client/server example. A 
new README was added to the test directory providing an orientation there. 

The web socket transport works but is experimental and incomplete. Hope to get 
it wrapped up over the next week. With Web Socket in place it makes sense to 
consider adding a binary protocol on the browser side.


> Add SSL and Web Socket Support to Node and JavaScript
> -----------------------------------------------------
>
>                 Key: THRIFT-2355
>                 URL: https://issues.apache.org/jira/browse/THRIFT-2355
>             Project: Thrift
>          Issue Type: Improvement
>          Components: JavaScript - Compiler, JavaScript - Library, Node.js - 
> Library
>    Affects Versions: 0.9.2
>         Environment: all
>            Reporter: Randy Abernethy
>            Assignee: Randy Abernethy
>            Priority: Minor
>             Fix For: 0.9.2
>
>         Attachments: 0001-Add-WebSocket-support-to-JS-and-Node.JS.patch
>
>
> This patch adds support for SSL between Node.js and Browser JavaScript as 
> well as initial WebSocket  transport support.
> The createStaticHTTPThriftServer() method has been renamed createWebServer(). 
> The resulting server supports XHR based HTTP:// and HTTPS:// clients as well 
> as upgrades to WS:// and WSS:// for websocket clients. 
> The JavaScript thrift.js library now includes websocket support through 
> TWebSocketTransport. The old XHR transport still goes by the alias Transport 
> but can now also be accessed through the name TXHRTransport. Browser clients 
> can use XHR over HTTP and HTTPS (as always) and also WebSocket (WS://) and 
> secure WebSocket (WSS://).
> The JavaScript grunt build runs jQuery and Normal JavaScript synchronous and 
> asynchronous tests over HTTP and HTTPS. There are now three test drivers in 
> the thrift/lib/js/test directory:
>   - test.html   the jQuery build test (thrift -gen js:jquery)
>   - test-nojq.html   the normal JavaScript build test (thrift -gen js)
>   - testws.html   the web socket test.
> The thrift/test/keys directory supplies the key and cert for the HTTPS test 
> server. 
> The root js README was updated and contains a complete client/server example. 
> A new README was added to the test directory providing an orientation there. 
> With WebSocket in place it makes sense to consider adding a binary protocol 
> on the browser side.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to