首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在后台作业分析中输入“\”

在后台作业分析中输入“\”
EN

Stack Overflow用户
提问于 2015-06-05 11:35:16
回答 5查看 310关注 0票数 1

当我运行这个后台作业时,这就是我要得到的日志。

代码语言:javascript
复制
I2015-06-05T11:17:37.360Z]v163: Ran job DeleteAccount with:

  Input: "{\"username\":\"9369190589\"}"

request.params.username没有定义,因为'\‘是存在的。所以我无法访问用户名。如何从作业中访问用户名?

更新:下面是我正在尝试的代码的一部分

代码语言:javascript
复制
Parse.Cloud.job("DeleteAccount", function(request, response){
    var id = request.object.get("username");
    console.log("id = " + id);
});

以下是错误: I2015-06-05T11:06:31.839Z]v163: Ran作业DeleteAccount:

输入:“{\”id\“:\”9369190589\“}

失败: TypeError:无法调用未定义的方法“get”

即使是request.params.username也不起作用

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2015-06-12 16:38:06

由于我没有足够的声誉来发表评论,我将在这里作出贡献。

我和你有同样的问题。此外,我注意到当使用REST请求调用作业时,输入日志被打印为

代码语言:javascript
复制
I2015-06-12T16:18:16.285Z]
I2015-06-12T16:18:16.503Z]v44: Ran job XXX with:
    Input: {"api":"2oil4z6k","name_asset":"SX5E"}
    Result: undefined

REST请求的参数声明为-d‘{“api”:“2调4z6k”,"name_asset":"SX5E"}’

而当使用计划的云作业调用作业时,日志被打印为

代码语言:javascript
复制
I2015-06-12T16:23:27.259Z]
I2015-06-12T16:23:27.432Z]v44: Ran job XXX with:
  Input: "{\"api\":\"2oil4z6k\", \"name\":\"SX5E\"}"
  Failed with: An error has occurred

这个参数在参数输入中声明为{“api”:“2ine4z6k”,"name":"SX5E"}

因此,似乎计划的云作业正在转义JSON对象中的每个字符串。

解决方案是在JSON.parse()上调用request.params

代码语言:javascript
复制
data = JSON.parse(request.params);

希望这能帮上忙!

票数 2
EN

Stack Overflow用户

发布于 2015-06-05 11:36:49

内部"需要转义以不关闭封闭的"

比较语法突出显示:

代码语言:javascript
复制
"a "string""

"a \"string\""

\告诉您,下面的字符不应该以特殊的方式运行。在这种情况下,它的意思是“这只是一个引号内的字符串,关闭字符串!

票数 0
EN

Stack Overflow用户

发布于 2015-06-05 11:37:44

\习惯于您想要逃避的转义文字。因此,在您的例子中,第一个"是字符串的开始,最后一个也是。中间使用的"是使用\转义的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30665512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档