diff --git a/src/request_handlers/session_request_handler.js b/src/request_handlers/session_request_handler.js
index <HASH>..<HASH> 100644
--- a/src/request_handlers/session_request_handler.js
+++ b/src/request_handlers/session_request_handler.js
@@ -576,11 +576,16 @@ ghostdriver.SessionReqHand = function(session) {
     },
 
     _postMouseClickCommand = function(req, res, clickType) {
-        var postObj = JSON.parse(req.post),
+        var postObj = {},
             mouseButton = "left";
         // normalize click
         clickType = clickType || "click";
 
+        // The protocol allows language bindings to send an empty string
+        if (req.post.length > 0) {
+            postObj = JSON.parse(req.post);
+        }
+
         // Check that either an Element ID or an X-Y Offset was provided
         if (typeof(postObj) === "object") {
             // Determine which button to click
Allowing empty strings for JSON body of mouse click events.