From 3e3c9ff5c1d0f2432283d3380a3410406f84be26 Mon Sep 17 00:00:00 2001 From: Stefan Radomski Date: Wed, 30 Oct 2013 14:58:47 +0100 Subject: Content-type header with firefox and case-typo with reflectorip in miles --- apps/samples/miles/miles.js | 2 +- apps/samples/miles/miles.scxml | 5 +++-- .../plugins/invoker/miles/MilesSessionInvoker.cpp | 17 ++++++++++------- src/uscxml/server/HTTPServer.cpp | 4 ++-- 4 files changed, 16 insertions(+), 12 deletions(-) diff --git a/apps/samples/miles/miles.js b/apps/samples/miles/miles.js index 860cd1e..1b2d0b6 100644 --- a/apps/samples/miles/miles.js +++ b/apps/samples/miles/miles.js @@ -31,6 +31,7 @@ function Miles(element, params) { // The URL to request url: "http://" + scxmlURL + "/miles/connect", // handleAs:"text", + contentType: 'application/json', postData: dojo.toJson({ reflectorIp: reflectorIp, email: email, @@ -38,7 +39,6 @@ function Miles(element, params) { }), headers:{ "X-Requested-With": null, - "Content-Type": "application/json" }, error: function(err) { console.log(err); diff --git a/apps/samples/miles/miles.scxml b/apps/samples/miles/miles.scxml index 746e37f..0ecca05 100644 --- a/apps/samples/miles/miles.scxml +++ b/apps/samples/miles/miles.scxml @@ -33,8 +33,9 @@ + - + @@ -46,7 +47,7 @@ - + diff --git a/src/uscxml/plugins/invoker/miles/MilesSessionInvoker.cpp b/src/uscxml/plugins/invoker/miles/MilesSessionInvoker.cpp index bd466b6..a15956e 100644 --- a/src/uscxml/plugins/invoker/miles/MilesSessionInvoker.cpp +++ b/src/uscxml/plugins/invoker/miles/MilesSessionInvoker.cpp @@ -103,11 +103,14 @@ void MilesSessionInvoker::send(const SendRequest& req) { returnEvent(retEv); } else if (iequals(req.name, "connect")) { + + std::cout << req; + std::string email = "someSaneDefault"; Event::getParam(req.params, "email", email); - std::string reflectorIP = "127.0.0.1"; - Event::getParam(req.params, "reflectorip", reflectorIP); + std::string reflectorIp = "127.0.0.1"; + Event::getParam(req.params, "reflectorIp", reflectorIp); std::string problemName = "Generic"; Event::getParam(req.params, "problemname", problemName); @@ -115,21 +118,21 @@ void MilesSessionInvoker::send(const SendRequest& req) { return; int rv; - rv = miles_connect_reflector_session((char*)reflectorIP.c_str(), (char*)problemName.c_str()); + rv = miles_connect_reflector_session((char*)reflectorIp.c_str(), (char*)problemName.c_str()); if (!rv) { LOG(ERROR) << "Could not setup reflector session"; return; } /* Set up audio and video RTP sockets */ - video_rtp_in_socket = miles_net_setup_udp_socket((char*)reflectorIP.c_str(), video_port, video_port, 10, 16000); - audio_rtp_in_socket = miles_net_setup_udp_socket((char*)reflectorIP.c_str(), audio_port, audio_port, 10, 16000); + video_rtp_in_socket = miles_net_setup_udp_socket((char*)reflectorIp.c_str(), video_port, video_port, 10, 16000); + audio_rtp_in_socket = miles_net_setup_udp_socket((char*)reflectorIp.c_str(), audio_port, audio_port, 10, 16000); video_rtp_out_socket = video_rtp_in_socket; //miles_net_setup_udp_socket((char*)reflectorIP.c_str(), video_port, 0, 10, 16000); audio_rtp_out_socket = audio_rtp_in_socket; //miles_net_setup_udp_socket((char*)reflectorIP.c_str(), audio_port, 0, 10, 16000); /* Set up audio and video RTCP sockets */ - video_rtcp_in_socket = miles_net_setup_udp_socket((char*)reflectorIP.c_str(), video_port+1, video_port+1, 10, 16000); - audio_rtcp_in_socket = miles_net_setup_udp_socket((char*)reflectorIP.c_str(), audio_port+1, audio_port+1, 10, 16000); + video_rtcp_in_socket = miles_net_setup_udp_socket((char*)reflectorIp.c_str(), video_port+1, video_port+1, 10, 16000); + audio_rtcp_in_socket = miles_net_setup_udp_socket((char*)reflectorIp.c_str(), audio_port+1, audio_port+1, 10, 16000); video_rtcp_out_socket = video_rtcp_in_socket; //miles_net_setup_udp_socket((char*)reflectorIP.c_str(), video_port+1, 0, 10, 16000); audio_rtcp_out_socket = audio_rtcp_in_socket; //miles_net_setup_udp_socket((char*)reflectorIP.c_str(), audio_port+1, 0, 10, 16000); diff --git a/src/uscxml/server/HTTPServer.cpp b/src/uscxml/server/HTTPServer.cpp index 09dc0b6..efd49a5 100644 --- a/src/uscxml/server/HTTPServer.cpp +++ b/src/uscxml/server/HTTPServer.cpp @@ -387,11 +387,11 @@ void HTTPServer::httpRecvReqCallback(struct evhttp_request *req, void *callbackD key.clear(); } request.data.compound["content"].atom.clear(); - } else if (iequals(contentType, "application/json")) { + } else if (iequals(contentType.substr(0, 16), "application/json")) { request.data.compound["content"] = Data::fromJSON(request.data.compound["content"].atom); } } - + request.raw = raw.str(); // try with the handler registered for path first -- cgit v0.12