libmicrohttpd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libmicrohttpd] Websockets?


From: Christian Grothoff
Subject: Re: [libmicrohttpd] Websockets?
Date: Mon, 23 Jan 2012 18:35:49 +0100
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.16) Gecko/20111110 Lightning/1.0b1 Icedove/3.0.11

This has actually been on my "potential features" list for a little while. The implementation is quite trivial; all that is really needed is some minor modification to the MHD_response internals / API to give the application a way to create a "websocket" response; that response would then send the HTTP "UPGRADE" header and the API would need to provide a mechanism to return the socket of the connection to the application.

So a clean implementation would require modifications to MHD (I don't see how it could be cleanly done with libwebsockets, other than by running a second HTTP-server on a different port, but that's not clean in my book); however, those modifications should be small and could be done in a backwards-compatible manner.

The one big major roadblock for implementing this in MHD is that this would be tricky to automatically (!) test any such implementation. Last time I checked, libcurl did not have support for websockets, which means we could not use our usual approach of having a testcase with a libcurl <-> libmicrohttpd setup for testing. And I am hesitant to add (even) more features without (good) testcases...

So if you have a *nice*, *free* C library for a websocket client that we could use here, that would be useful and might convince me to think harder about what the API should really look like ;-). But it is already good to know that some of you are interested in this feature...

Happy hacking!

Christian

On 01/23/2012 05:54 PM, Jon Nalley wrote:
After the 'Upgrade' request Websocket no longer uses HTTP.  You might be
able to leverage libwebsockets
<http://git.warmcat.com/cgi-bin/cgit/libwebsockets> in conjunction with
libmicrohttpd.

On Mon, Jan 23, 2012 at 10:45 AM, Sven Geggus
<address@hidden <mailto:address@hidden>> wrote:

    Hello,

    looking for a way to get rid of my pseudo server push using delayed ajax
    requests I came about the WebSocket-Protokoll.

    Would it be possible to implement this using libmicrohttpd without
    hacking
    the core?

    Sven

    --
    Das allgemeine Persönlichkeitsrecht (Art. 2 Abs.1 i.V.m. Art.1 Abs. 1GG)
    umfasst das Grundrecht auf Gewährleistung der Vertraulichkeit und
    Integrität
    informationstechnischer Systeme. (BVerfG, 1BvR 370/07)
    /me is address@hidden, http://sven.gegg.us/ on the Web






reply via email to

[Prev in Thread] Current Thread [Next in Thread]