在KRL中使用Json

在KRL中使用Json,json,krl,Json,Krl,我在解析Json时遇到了麻烦,当我将url放在浏览器中时,我得到的是一个返回{“token”:“7xv6r32eay5n376”,“secret”:“589bc72ix7mowua”}所以我只想得到那个字符串,解析出token和secret,并在通知中显示值,以确认我得到了正确的信息。有人能看出我做错了什么吗 rule first_rule { select when pageview ".*" setting () pre{ json=http:get(/* I

我在解析Json时遇到了麻烦,当我将url放在浏览器中时,我得到的是一个返回
{“token”:“7xv6r32eay5n376”,“secret”:“589bc72ix7mowua”}
所以我只想得到那个字符串,解析出token和secret,并在通知中显示值,以确认我得到了正确的信息。有人能看出我做错了什么吗

    rule first_rule {
    select when pageview ".*" setting ()
    pre{
    json=http:get(/* I place my URL here */);
    content   = json.pick("$..content");
    token=content.decode();
    tok=token.pick("$..token");
    sec=token.pick("$..secret");
    message="Token: "+tok+" "+"Secret: "+sec;
    }    
    notify("Values: ",message);    
  }
}

所以我修复了我的KRL问题,我猜是在使用http:get()时;您必须在get()中使用双引号“not single”。

因此我修复了我的KRL问题,这也是一个疯狂的问题。我猜当使用http:get()时;您必须在get()中使用双引号“not single”。您可以回答自己的问题,然后人们可以对其进行投票我猜stackoverflow在我成为24小时用户之前不会让我回答,所以在他们允许的时候我会回答;)您还可以使用
dataset
datasource
而不是
http:get()
。使您的代码更简洁。:)是的,我在想这个问题,但我不希望每次应用程序运行时都运行此代码。http:get不能使用单引号有什么原因吗?我不确定原因,但当我尝试使用单引号时,它不起作用。