首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >下面的Azure通知集线器REST响应是什么意思:“指定的资源描述无效?”

下面的Azure通知集线器REST响应是什么意思:“指定的资源描述无效?”
EN

Stack Overflow用户
提问于 2014-10-21 21:59:16
回答 2查看 1.1K关注 0票数 1

我正在尝试通过Java后端服务注册我的的通知。

当这个应用程序在我的Windows设备上运行时,我从Visual中调试了它。该应用程序可以正确地获得一个ChannelUri并将其传递给我们的Java后端。(我在本地PC上运行后端。)

Java后端生成了以下模板注册请求,并试图将其发送到Azure REST Api:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<entry xmlns="http://www.w3.org/2005/Atom">
   <content type="application/xml">
      <WindowsTemplateRegistrationDescription xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
         <Tags>Windows,10204394042027091,broadcast</Tags>
         <ChannelUri>https://db3.notify.windows.com/?token=AwYAAABXiUp%2bD8v1%2bVfWbWLr3FZ3rQcJtPkUgFwaiGZus4GbtkM8zbZ6uQt1NKXpC4FOtYWHDxXvBb3FkoefaozvCYTFiDjhdb3jDuORUDY8zBlkGw1MxY0QjrH7G0fFbW0RXgo%3d</ChannelUri>
         <BodyTemplate><![CDATA[{...}]]></BodyTemplate>
         <WNSHeaders>
            <WNSHeader>
               <Header>X-WNS-Type</Header>
               <Value>wns/raw</Value>
            </WNSHeader>
         </WNSHeaders>
         <TemplateName>geoinfo</TemplateName>
      </WindowsTemplateRegistrationDescription>
   </content>
</entry>

在我看来,这是根据MS参考:http://msdn.microsoft.com/en-us/library/azure/dn223265.aspx

但是,响应仍然包含以下错误:

代码语言:javascript
复制
<Error><Code>400</Code><Detail>The specified resource description is invalid..TrackingId:4ffaabcc-c7f8-4a6c-ab2f-4f65e94427df_G16,TimeStamp:10/21/2014 9:42:52 PM</Detail></Error>

对Azure的问题有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2014-10-22 00:20:00

试试这个:

  1. 调用创建注册ID
  2. 在数据库中存储检索到的id
  3. 调用创建或更新注册创建注册
  4. 以后每次要更新注册时(刷新通道、修改标记.)您只需再次调用Create或更新注册

我刚刚成功地玩了有效载荷:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<entry xmlns="http://www.w3.org/2005/Atom">
  <title type="text"></title>
  <updated>2014-10-21T23:57:08Z</updated>
  <content type="application/atom+xml;type=entry;charset=utf-8">
    <WindowsTemplateRegistrationDescription xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect">
      <Tags>t1,t2</Tags>
      <ChannelUri>https://db3.notify.windows.com/?token=AwYAAABXiUp%2bD8v1%2bVfWbWLr3FZ3rQcJtPkUgFwaiGZus4GbtkM8zbZ6uQt1NKXpC4FOtYWHDxXvBb3FkoefaozvCYTFiDjhdb3jDuORUDY8zBlkGw1MxY0QjrH7G0fFbW0RXgo%3d</ChannelUri>
      <BodyTemplate><![CDATA[<?xml version="1.0" encoding="utf-16"?><root></root>]]></BodyTemplate>
      <WnsHeaders>
        <WnsHeader>
          <Header>X-WNS-Type</Header>
          <Value>wns/raw</Value>
        </WnsHeader>
      </WnsHeaders>
      <TemplateName>MyTemplate</TemplateName>
    </WindowsTemplateRegistrationDescription>
  </content>
</entry>
票数 1
EN

Stack Overflow用户

发布于 2014-10-22 15:03:44

错误消息显然意味着请求缺少所需的XML元素。就我的情况而言,问题是资本化:

WNSHeaderWNSHeaders都应该用Pascal写成:WnsHeaderWnsHeaders__.。

不幸的是,Microsoft关于API的文档在这方面有误导之嫌。

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

https://stackoverflow.com/questions/26497103

复制
相关文章

相似问题

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