Javascript 需要帮助让Zapier脚本示例在JSFIDLE中工作吗

Javascript 需要帮助让Zapier脚本示例在JSFIDLE中工作吗,javascript,jquery,xml,json,underscore.js,Javascript,Jquery,Xml,Json,Underscore.js,Zapier有一种脚本语言,但无法真正进行实时测试。所以我想用他们的例子来说明我自己的连接/数据 我有一个使用XML作为API输出的应用程序,Zapier需要JSON才能运行。因此,我需要使用下面的链接将XML转换为JSON 下面是Zapier将XML转换为JSON的脚本示例的链接: 我怎样才能让它在JSFIDLE中工作?我想将其放入JSFIDLE的原因是为了能够操纵XML输出 我的XML输出如下所示: 布莱恩,Zapier的开发者之一 我为您准备了这个JSFIDLE示例: Zap={ 观众列

Zapier有一种脚本语言,但无法真正进行实时测试。所以我想用他们的例子来说明我自己的连接/数据

我有一个使用XML作为API输出的应用程序,Zapier需要JSON才能运行。因此,我需要使用下面的链接将XML转换为JSON

下面是Zapier将XML转换为JSON的脚本示例的链接:

我怎样才能让它在JSFIDLE中工作?我想将其放入JSFIDLE的原因是为了能够操纵XML输出

我的XML输出如下所示:


布莱恩,Zapier的开发者之一

我为您准备了这个JSFIDLE示例:

Zap={
观众列表后投票:功能(捆绑){
//使用提供的dom方法和熟悉的jquery接口
xmlements=$($.parseXML(bundle.response.content)).find('list');
//返回可json序列化的对象列表
return u2;.map(xmlElements,函数(listElement)){
listElement=$(listElement);
//手动提取每个属性,放置到对象中
返回{
id:listElement.attr('id'),
订户计数:listElement.attr(“订户计数”),
display_name:liselement.attr('display_name'),
名称:listElement.attr('name'),
};
});
},
};
//从捆绑日志中复制我
变量束={
答复:{
内容:“”
}
};
结果=Zap.观众名单和投票后调查(捆绑);
控制台日志(结果);
步骤:

  • 创建一个新示例,并将jquerylib设置为1.9
  • 为下划线添加外部源
  • 将上面的代码插入JS部分
  • 从我们的bundle日志复制并粘贴一个真正的bundle(或者您也可以只输入您想要的XML)
  • 调整到你的心内容
  • 完成后,您可以将其放回应用程序中


    另外,我们知道实时编辑现在有点痛苦,我们有一些想法可以在将来的版本中改进它。

    请将XLM包括在您的问题中。@SableFoste我不知道如何正确格式化它。很抱歉
    Zap = {
        audience_list_post_poll: function(bundle) {
            // use the provided dom methods with a familiar jquery interface
            xmlElements = $($.parseXML(bundle.response.content)).find('list');
            // return a list of objects that are json serializable 
            return _.map(xmlElements, function(listElement) {
                listElement = $(listElement);
                // pull off each attribute manually, place into object
                return {
                    id:                 listElement.attr('id'),
                    subscriber_count:   listElement.attr('subscriber_count'),
                    display_name:       listElement.attr('display_name'),
                    name:               listElement.attr('name'),
                };
            });
        },
    };
    
    // Copy me from the bundle log
    var bundle = {
        response: {
            content: '<YOUR_XML_HERE><list></list></YOUR_XML_HERE>'
        }
    };
    
    results = Zap.audience_list_post_poll(bundle);
    console.log(results);