Thanks Gustaf,  

I’m going to uninstall the older version of TCLLIB.


Yes it works! It’s more than enough!
In fact, since your previous commit, last Sunday the weekend, I was able to 
understand the implementation "workflow" and aspects of writing a client app in 
the backend scene. 

I’m going to download the latest commit and try it out. 

Furthermore, Chat and log-viewer samples are very nice and clean. You guys have 
separated very well the frontend app and backend in the ADP and TCL files 
respectively. 

Best wishes,
I



> On Dhuʻl-Q. 23, 1441 AH, at 08:08, Gustaf Neumann <neum...@wu.ac.at> wrote:
> 
> On 12.07.20 02:14, Iuri de Araujo Sampaio wrote:
> 
>> However, when I run the first version of the code, and it returns an error 
>> related to: Error: can't set "formMap": variable is array
>> 
>> /usr/local/src/ns-4.9.17/tcl8.6.8/library/http/http.tcl:     return [string 
>> map $formMap $string]
>> /usr/local/src/tcl8.6.9/library/http/http.tcl:       variable formMap [array 
>> get map]
>> 
>> The error is related to core packages, and I believe it happens to fail 
>> because that source is some sort of an old code. Thus, it’s not a good idea 
>> to fork it at all.
> Dear Iuri, 
> 
> this error comes form the tcllib (and it seems, you have two versions of 
> tcllib installed). This error is not related with NaviServer, i have no 
> knowledge about the internals of the tcllibs' http package.
> 
> As you have noticed, i have added a simple client side interface to the 
> websocket package of NaviServer on bitbucket. In essence, this means to add 
> support for "masked" messages, which are required for client frames
> for WebSockets. 
> I've also added client-side SNI support to ns_connchan to be able to connect 
> to a server with virtual hosting via HTTPS that provides multiple 
> certificates via SNI (Server Name Indication). So the current version of the 
> NaviServer websocket module (just committed) requires as well the current 
> version of NaviServer.
> 
> Don't expect this little interface (client-side websocket: ~150 LOC) to be 
> feature complete. It does not handle e.g. WebSocket continuations, etc. ... 
> but the following snippet should work ok.
> 
> -gn
> 
> ===========
> 
>   set WSURL wss://javascript.info/article/websocket/demo/hello 
> <wss://javascript.info/article/websocket/demo/hello>
>   set chan [ws::client::open $WSURL]
> 
>   # Send "Hello Wörld" to the echo service
>   ws::client::send $chan "Hello Wörld"
> 
>   # Get the reply and decode it (will return "Hello from server, Wörld!")
>   set replyText [ws::client::receive $chan]
> 
>   # ... do some more work and finally close the channel
>   ws::client::close $chan
> 
> 
> _______________________________________________
> naviserver-devel mailing list
> naviserver-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/naviserver-devel

_______________________________________________
naviserver-devel mailing list
naviserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/naviserver-devel

Reply via email to