首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Coldfusion / XML错误

Coldfusion / XML错误
EN

Stack Overflow用户
提问于 2011-08-16 09:28:59
回答 2查看 385关注 0票数 0

我使用开放BlueDragon,因为它是我的虚拟主机公司使用的--而且它是开源的。

我正在尝试使用XML读取YouTube提要,但一直收到以下错误:

代码语言:javascript
复制
value [media:group] is not a number

我的代码是:

代码语言:javascript
复制
<cfhttp url="https://gdata.youtube.com/feeds/api/users/Shuggy23/favorites" method="GET" />
<cfset xml = XmlParse(#cfhttp.FileContent#) />
<cfoutput>#xml.feed.entry["media:group"]["media:thumbnail"].XmlAttributes.url#</cfoutput>

我认为它以前是有效的,除非我的大脑在捉弄我。任何帮助都将不胜感激。

谢谢

道格拉斯

EN

回答 2

Stack Overflow用户

发布于 2011-08-16 10:11:47

对不起--代码在CF9上运行得很好,我想是特定于BlueDragon的。如果你尝试了一组不同的数据-可能会导致一个线索:

代码语言:javascript
复制
#xml.feed.entry["gd:comments"]["gd:feedlink"].XmlAttributes.href#

如果同样失败,我会怀疑引号语法或冒号符号,然后尝试BlueDragon文档和用户论坛。

抱歉,我帮不了你了。

-sean

票数 0
EN

Stack Overflow用户

发布于 2011-08-19 02:45:05

如果您将引用更改为xml.feed.entry1"gd:feedlink".XmlAttributes.href.,则此操作适用于BD请注意,我已经指定了您所指的条目节点。CF足够聪明,可以计算出您的意思是第一个"entry“节点(这就是您的意思吗?)。BD更像字面上的……它看到一个包含"entry“节点的数组,因此您需要指定该数组的哪个元素。

这段简化的代码演示了这一点:

代码语言:javascript
复制
<cfflush interval="1">
<cfxml variable="x">
    <a>
        <b><c>d</c></b>
        <b><c>e</c></b>
    </a>
</cfxml>
<cfoutput>x.a.b[1]["c"].xmlText: #x.a.b[1]["c"].xmlText# (OK on both platforms)<br /></cfoutput>
<cftry>
    <cfoutput>x.a.b["c"].xmlText: #x.a.b["c"].xmlText# (OK on CF only)<br /></cfoutput>
    <cfcatch>
        <cfdump var="#cfcatch#">
        <cfdump var="#x#">
    </cfcatch>
</cftry>

HTH

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

https://stackoverflow.com/questions/7072662

复制
相关文章

相似问题

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