23.01.2018 Views

MICROSOFT_PRESS_EBOOK_PROGRAMMING_WINDOWS_8_APPS_WITH_HTML_CSS_AND_JAVASCRIPT_PDF

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

FIGURE 14-7 Output of Scenario 2 of the Connecting with WebSockets sample (cropped).<br />

Here’s the process in code, simplified from js/scenario2.js, where we see a similar pattern to what we<br />

just saw for MessageWebSocket, only sending a continuous stream of data:<br />

var streamWebSocket;<br />

var dataWriter;<br />

var dataReader;<br />

var data = "Hello World";<br />

var countOfDataSent;<br />

var countOfDataReceived;<br />

var webSocket = new Windows.Networking.Sockets.StreamWebSocket();<br />

webSocket.onclosed = onClosed;<br />

// The server URI is obtained and validated here, and stored in a variable named uri.<br />

webSocket.connectAsync(uri).done(function () {<br />

streamWebSocket = webSocket;<br />

dataWriter = new Windows.Storage.Streams.DataWriter(webSocket.outputStream);<br />

dataReader = new Windows.Storage.Streams.DataReader(webSocket.inputStream);<br />

// When buffering, return as soon as any data is available.<br />

dataReader.inputStreamOptions = Windows.Storage.Streams.InputStreamOptions.partial;<br />

countOfDataSent = 0;<br />

countOfDataReceived = 0;<br />

// Continuously send data to the server<br />

writeOutgoing();<br />

// Continuously listen for a response<br />

readIncoming();<br />

}, function (error) {<br />

var errorStatus = Windows.Networking.Sockets.WebSocketError.getStatus(error.number);<br />

// [Output error message]<br />

});<br />

function writeOutgoing() {<br />

686

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!