首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Javascript中的AtomPub XML响应中提取值(用于Google管理设置API)

如何从Javascript中的AtomPub XML响应中提取值(用于Google管理设置API)
EN

Stack Overflow用户
提问于 2014-07-16 01:42:07
回答 1查看 498关注 0票数 1

我正在从Google脚本(Javascript)调用Google管理设置API,以检索我们Google域中的最大用户数。

成功的GET请求以AtomPub XML格式返回响应,如下所示:

代码语言:javascript
复制
<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
<id>https://apps-apis.google.com/a/feeds/domain/2.0/domain.com/general/maximumNumberOfUsers</id>
<updated>2014-07-16T00:55:27.837Z</updated>
<link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/domain/2.0/domain.com/general/maximumNumberOfUsers'/>
<link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/domain/2.0/domain.com/general/maximumNumberOfUsers'/>
<apps:property name='maximumNumberOfUsers' value='100'/></entry>

maximumNumberOfUsers属性的值(在本例中是100)是我唯一关心的部分。

如何提取该值,以便将其赋值给整数变量?

我的第一本能是写一个疯狂的复杂正则表达式,但我知道肯定有一个更容易的方法!

我认为在JQuery中有一种方法可以做到这一点,但是在Google脚本中没有办法使用jQuery。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-16 06:14:31

阅读这个先前的答案。不用写疯狂的regex..。只需获取直接处理xml结构的实用程序即可!

下面是一段未经测试的代码,它使用了这个答案中的getElementByVal()函数:

代码语言:javascript
复制
...
var xml = UrlFetchApp.fetch(url).getContentText();
var document = XmlService.parse(xml);
var root = document.getRootElement();
var atom = XmlService.getNamespace('http://www.w3.org/2005/Atom');
var entries = document.getRootElement().getChildren('entry', atom);

var maxUsers = getElementByVal( entries, 'property', 'name', 'maximumNumberOfUsers' );
                    .getAttribute(value);
...
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24770913

复制
相关文章

相似问题

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