【问题标题】:XMPP photo type is not given in response when requested请求时未在响应中给出 XMPP 照片类型
【发布时间】:2010-11-09 09:12:28
【问题描述】:

我们正在尝试使用传输从我们自己的 ejabberd 服务器实现 facebook 聊天。但是当我们请求联系人的照片时,它给出的是 binval 但不是照片类型。谁能帮我解决这个问题。


编辑

针对后续问题,这是我发送给服务器的请求:

var imgcard = $iq({ to:name, from:connection.jid, type: 'get', id :'avatar'+name})
    .c('vCard', {xmlns:'vcard-temp' })
connection.sendIQ(imgcard, getImg);

回复是:

<body xmlns="http://jabber.org/protocol/httpbind">
    <iq xmlns="jabber:client"
        to="yummy61@li188-236.members.linode.com/24581935361290171300602628"
        from="666346810@facebook.li188-236.members.linode.com" 
        id="avatar666346810@facebook.li188-236.members.linode.com"
        type="result">
        <vcard xmlns="vcard-temp">
            <desc></desc>
            <photo>
                <binval>/9j/4AAQSkZJRgABAQAAAQABAAD/9sAQwACAQEBAQECAQEBAgICAgIEAwICAgIFBAQDBAY... 
                </binval>
            </photo>
        </vcard>
    </iq>
</body>

我得到 binval 但不是图像类型。谁能说出我犯的错误?

【问题讨论】:

    标签: xmpp photo vcf-vcard


    【解决方案1】:

    使用JAXL library 检索已连接帐户的vCard,我收到以下回复,其中确实附加了&lt;TYPE&gt;image/jpeg&lt;/TYPE&gt; 节点。

    [16000] 2010-11-09 23:49:47 - [[XMPPSend]] body
    <body rid="5674" sid="41bbdfe522c4e1c3a3e1a4cfe20968f1" xmlns="http://jabber.org/protocol/httpbind"><iq type="get" id="7" from="abhinavsingh@chat.facebook.com/jaxl.1289375373_ba14f160_494AE079BF19C"><vCard xmlns="vcard-temp"/></iq></body>
    
    [16000] 2010-11-09 23:49:48 - [[XMPPGet]]
    <body sid="41bbdfe522c4e1c3a3e1a4cfe20968f1" rid="5674" xmlns="http://jabber.org/protocol/httpbind"><iq from="abhinavsingh@chat.facebook.com" to="abhinavsingh@chat.facebook.com/jaxl.1289375373_ba14f160_494AE079BF19C" id="7" type="result"><vCard xmlns="vcard-temp"><FN>Abhinav Singh</FN><PHOTO><TYPE>image/jpeg</TYPE><BINVAL></BINVAL></PHOTO></vCard></iq></body>
    

    您从 Facebook 聊天服务器返回的具体响应是什么?

    【讨论】:

    • XEP-0153 (xmpp.org/extensions/xep-0153.html) 第 5 节(实施说明)说:“ 元素的 XML 字符数据是一个提示。如果 指定的内容类型与 元素中提供的数据不匹配,处理应用程序必须遵守实际图像数据的内容类型并且必须忽略 。如果 是除了 image/gif、image/jpeg 或 image/png,它应该被忽略。”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-31
    • 1970-01-01
    • 2017-03-27
    • 2017-09-30
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    相关资源
    最近更新 更多