Phantomjs脚本在json对象解析后停止执行

时间:2013-10-29 03:05:42

标签: javascript phantomjs

我试图将帖子数据传递给下面的phantomjs脚本(使用php / curl):

server.listen(port, function(request, response) {

  // Print some information Just for debug 
  console.log("request method: ", request.method);  // request.method POST or GET 
  if(request.method == 'POST' ){
                   console.log("POST params should be next: ");
                   console.log(request.headers);
                code = response.statusCode = 200;
                response.write(code);

                console.log("POST params: ",request.postRaw);
                console.log("POST params: ",JSON.stringify(request.postRaw));
                var json = request.postRaw;
                obj = JSON.parse(json);

                console.log(obj.email);
                console.log(obj.pass);

                var userName = json.stringify(obj.email);
                var userPass = json.stringify(obj.pass);

               console.log("I'm here");

我正在尝试从帖子请求中解析出用户名和密码。我注意到,如果我离开:

                var userName = json.stringify(obj.email);
                var userPass = json.stringify(obj.pass);

脚本将在以下后挂起:

 console.log("I'm here");

如果我删除这两行,整个脚本将正常执行。为什么会这样?我该如何解决这个问题,以便解析json对象(obj),但脚本不会挂起?

1 个答案:

答案 0 :(得分:1)

在常规JavaScript中, JSON 大写(且区分大小写)。不确定PhantomJS的javascript子集如何与常规javascript排成一行,但我猜你应该在那里使用大写JSON。

例如:

JSON.stringify(obj.email);