这个工作正常。
curl -H 'Content-Type: application/xml' -d " <body rid='2965554435' xmlns='http://jabber.o=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh' /> " https://dashboard.onsip.com/http-bind
这个返回一个空响应
curl -H 'Content-Type: application/xml' -d " <body rid='2965554435' xmlns='http://jabber.o=utf-8' ver='1.6' xmpp:version='1.0' xmpp:xmlns='urn:xmpp:xbosh' /> " https://dashboard.onsip.com/http-bind
有什么区别?第二个这样写合适吗?
附言XHR xml 由 OXJS 库生成。
最佳答案
仅:
xmlns:xmpp='urn:xmpp:xbosh'
声明一个命名空间。前缀 xmlns:...
在 XML With Namespaces 中具有预定义的含义, 以绑定(bind)文档中 xmpp:...
前缀的使用。
这个:
xmpp:xmlns='urn:xmpp:xbosh'
不是 namespace 声明,它是一个名为 xmlns
的属性,前缀为 xmpp
。 xmpp
前缀未绑定(bind)到本文档中的任何 namespace ,因为没有 xmlns:xmpp
声明并且它不是预定义的前缀。
带有命名空间的 XML 解析器在获取 xmpp:...
属性并且没有用于 xmpp
的命名空间声明时会报错。此错误将是 Web 服务未给您任何响应的原因。
关于javascript - "xmlns:xmpp"和 "xmpp:xmlns"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3378258/