Windows 10 Iot/UWP 上的 Azure 存储库客户端?

2023-12-29

Windows 10 Iot-Core/UWP (RPi) 似乎不支持 Azure 存储客户端。不过,我将它用于 Blob,并且它对于表也可以正常工作。现在,更新到最新的稳定版(和-pre,尝试了两者)后,对表的访问挂起

await table.ExecuteQuerySegmentedAsync(query, new TableContinuationToken());

我徒劳地寻找一种使其同步的方法,这至少可以帮助我调试它。我还想知道其他人当前的成功以及在 IoT-Core (RPi) 上使用 Azure 存储客户端的“独家报道”。

UPDATE:如下扩展了 RequestOptions,我的简单调用也如下所示。我仔细检查了连接字符串、表访问(来自其他工具)和帐户。他们在其他地方都工作得很好。我还将 VStudio2015 远程调试中遇到的异常粘贴到 IoT-Core RaspberryPi 最新版本。

        // Setup the table container
        // connectString looks fine, works fine elsewhere: http for debug instead of https 
        var connectionString = @"DefaultEndpointsProtocol=http;AccountName=myaccount;AccountKey=EUybijab+WHATEVERDzYubKGADwjf/6k5IuoRVgPMMqMez0gb07/dfAv9Qj1/v7NkstGAygWNab07q6FhNBQ==";

        var cloudStorageAccount = CloudStorageAccount.Parse(connectionString);
        CloudTableClient cloudTableClient = cloudStorageAccount.CreateCloudTableClient();
        cloudTable = cloudTableClient.GetTableReference(appSettings.AzureStorageOeConfigTableName);
        //never returns var x = await cloudTable.CreateIfNotExistsAsync();

        // Simplest query to existing small table
        var pkey = "b8-27-eb-86-5d-4d";
        var rkey = "0000000013505717";
        var tstOp = TableOperation.Retrieve(pkey, rkey);
        var requestOptions = new TableRequestOptions
        {
            PayloadFormat = TablePayloadFormat.JsonFullMetadata,
            LocationMode = LocationMode.PrimaryThenSecondary,
            RetryPolicy = new ExponentialRetry(),
            ServerTimeout = TimeSpan.FromMinutes(2)
        };
        // Throws exceptions shown below.
        var tst1 = await table.ExecuteAsync(tstOp, requestOptions, null);

例外:对我的测试代码有什么想法或修改吗?

{"<?xml version=\"1.0\" encoding=\"utf-16\"?>\r\n<!--An exception has occurred. For more information please deserialize this message via RequestResult.TranslateFromExceptionMessage.-->\r\n<RequestResult>\r\n  <HTTPStatusCode>403</HTTPStatusCode>\r\n  <HttpStatusMessage>Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.</HttpStatusMessage>\r\n  <TargetLocation>Primary</TargetLocation>\r\n  <ServiceRequestID>c4892c5a-0002-003a-4992-493991000000</ServiceRequestID>\r\n  <ContentMd5 />\r\n  <Etag />\r\n  <RequestDate>Wed, 06 Jan 2016 22:30:01 GMT</RequestDate>\r\n  <StartTime>Wed, 06 Jan 2016 21:29:55 GMT</StartTime>\r\n  <EndTime>Wed, 06 Jan 2016 21:32:12 GMT</EndTime>\r\n  <Error>\r\n    <Code>AuthenticationFailed</Code>\r\n    <Message>Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.\r\nRequestId:c4892c5a-0002-003a-4992-493991000000\r\nTime:2016-01-07T21:30:36.1204037Z</Message>\r\n  </Error>\r\n  <ExceptionInfo>\r\n    <Type>StorageException</Type>\r\n    <HResult>-2147467259</HResult>\r\n    <Message>Cannot access a closed Stream.</Message>\r\n    <Source />\r\n    <StackTrace />\r\n    <InnerExceptionInfo>\r\n      <ExceptionInfo>\r\n        <Type>ObjectDisposedException</Type>\r\n        <HResult>-2146232798</HResult>\r\n        <Message>Cannot access a closed Stream.</Message>\r\n        <Source>mscorlib</Source>\r\n        <StackTrace>   at System.IO.__Error.StreamIsClosed()\r\n   at System.IO.BufferedStream.ReadAsync(Byte[] buffer, Int32 offset, Int32 count, CancellationToken cancellationToken)\r\n   at System.Net.Http.DelegatingStream.ReadAsync(Byte[] buffer, Int32 offset, Int32 count, CancellationToken cancellationToken)\r\n   at Microsoft.WindowsAzure.Storage.Core.Util.StreamExtensions.&lt;WriteToAsync&gt;d__3`1.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)\r\n   at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.&lt;ExecuteAsyncInternal&gt;d__c`1.MoveNext()</StackTrace>\r\n      </ExceptionInfo>\r\n    </InnerExceptionInfo>\r\n  </ExceptionInfo>\r\n</RequestResult>"}

是的,不幸的是,存储尚不支持 UWP 应用程序,因为 UWP 平台中存在一个错误,会导致身份验证出现问题。我们正在等待 UWP 团队的修复。谢谢!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Windows 10 Iot/UWP 上的 Azure 存储库客户端? 的相关文章

  • 如何将 protobuf-net 与不可变值类型一起使用?

    假设我有一个像这样的不可变值类型 Serializable DataContract public struct MyValueType ISerializable private readonly int x private readon
  • 如何将非静态类成员“std::bind”绑定到 Win32 回调函数“WNDPROC”?

    我正在尝试将非静态类成员绑定到标准WNDPROC http msdn microsoft com en us library ms633573 aspx功能 我知道我可以通过将类成员设为静态来简单地做到这一点 但是 作为一名 C 11 ST
  • 计算 Richtextbox 中所有单词的最有效方法是什么?

    我正在编写一个文本编辑器 需要提供实时字数统计 现在我正在使用这个扩展方法 public static int WordCount this string s s s TrimEnd if String IsNullOrEmpty s re
  • 在 C 中匹配二进制模式

    我目前正在开发一个 C 程序 需要解析一些定制的数据结构 幸运的是我知道它们是如何构造的 但是我不确定如何在 C 中实现我的解析器 每个结构的长度都是 32 位 并且每个结构都可以通过其二进制签名来识别 举个例子 有两个我感兴趣的特定结构
  • 复制目录内容

    我想将目录 tmp1 的内容复制到另一个目录 tmp2 tmp1 可能包含文件和其他目录 我想使用C C 复制tmp1的内容 包括模式 如果 tmp1 包含目录树 我想递归复制它们 最简单的解决方案是什么 我找到了一个解决方案来打开目录并读
  • 获取两个工作日之间的天数差异

    这听起来很简单 但我不明白其中的意义 那么获取两次之间的天数的最简单方法是什么DayOfWeeks当第一个是起点时 如果下一个工作日较早 则应考虑在下周 The DayOfWeek 枚举 http 20 20 5B1 5D 3a 20htt
  • java.io.Serialized 在 C/C++ 中的等价物是什么?

    C C 的等价物是什么java io Serialized https docs oracle com javase 7 docs api java io Serializable html 有对序列化库的引用 用 C 序列化数据结构 ht
  • 回发后刷新时提示确认表单重新提交。我做错了什么?

    我有一个以空白 默认状态启动的仪表板 我让用户能够将保存的状态加载到仪表板中 当他们单击 应用 按钮时 我运行以下代码 function CloseAndSave var radUpload find radUpload1ID var in
  • 从 Linux 内核模块中调用用户空间函数

    我正在编写一个简单的 Linux 字符设备驱动程序 以通过 I O 端口将数据输出到硬件 我有一个执行浮点运算的函数来计算硬件的正确输出 不幸的是 这意味着我需要将此函数保留在用户空间中 因为 Linux 内核不能很好地处理浮点运算 这是设
  • 具有交替类型的可变参数模板参数包

    我想知道是否可以使用参数包捕获交替参数模式 例如 template
  • Azure 辅助角色“请求输入之一超出范围”的内部异常。

    我在辅助角色中调用 CloudTableClient CreateTableIfNotExist 方法 但收到一个异常 其中包含 请求输入之一超出范围 的内部异常 我做了一些研究 发现这是由于将表命名为非法表名引起的 但是 我尝试为我的表命
  • AES 128 CBC 蒙特卡罗测试

    我正在 AES 128 CBC 上执行 MCT 如中所述http csrc nist gov groups STM cavp documents aes AESAVS pdf http csrc nist gov groups STM ca
  • 动态添加 ASP.Net 控件

    我有一个存储过程 它根据数据库中存储的记录数返回多行 现在我想有一种方法来创建 div 带有包含该行值的控件的标记 如果从数据库返回 10 行 则 10 div 必须创建标签 我有下面的代码来从数据库中获取结果 但我不知道如何从这里继续 S
  • Cmake 链接共享库:包含库中的头文件时“没有这样的文件或目录”

    我正在学习使用 CMake 构建库 构建库的代码结构如下 include Test hpp ITest hpp interface src Test cpp ITest cpp 在 CMakeLists txt 中 我用来构建库的句子是 f
  • 按 Esc 按键关闭 Ajax Modal 弹出窗口

    我已经使用 Ajax 显示了一个面板弹出窗口 我要做的是当用户按 Esc 键时关闭该窗口 这可能吗 如果有人知道这一点或以前做过这一点 请帮助我 Thanks 通过以下链接 您可以通过按退出按钮轻松关闭窗口 http www codepro
  • 不同类型指针之间的减法[重复]

    这个问题在这里已经有答案了 我试图找到两个变量之间的内存距离 具体来说 我需要找到 char 数组和 int 之间的距离 char data 5 int a 0 printf p n p n data 5 a long int distan
  • 如果没有抽象成员,基类是否应该标记为抽象?

    如果一个类没有抽象成员 可以将其标记为抽象吗 即使没有实际理由直接实例化它 除了单元测试 是的 将不应该实例化的基类显式标记为抽象是合理且有益的 即使在没有抽象方法的情况下也是如此 它强制执行通用准则来使非叶类抽象 它阻止其他程序员创建该类
  • 方法优化 - C#

    我开发了一种方法 允许我通过参数传入表 字符串 列数组 字符串 和值数组 对象 然后使用这些参数创建参数化查询 虽然它工作得很好 但代码的长度以及多个 for 循环散发出一种代码味道 特别是我觉得我用来在列和值之间插入逗号的方法可以用不同的
  • 如何部署“SQL Server Express + EF”应用程序

    这是我第一次部署使用 SQL Server Express 数据库的应用程序 我首先使用实体 框架模型来联系数据库 我使用 Install Shield 创建了一个安装向导来安装应用程序 这些是我在目标计算机中安装应用程序所执行的步骤 安装
  • 使用 .NET Process.Start 运行时挂起进程 - 出了什么问题?

    我在 svn exe 周围编写了一个快速而肮脏的包装器来检索一些内容并对其执行某些操作 但对于某些输入 它偶尔会重复挂起并且无法完成 例如 一个调用是 svn list svn list http myserver 84 svn Docum

随机推荐

  • 安装 npm cypress-mongodb 时出现问题

    我正在尝试设置插件cypress mongodb在我们的 cypress 框架上使用 但我遇到了太多问题 我已经安装并配置了插件文档 https www npmjs com package cypress mongodb 但是当我启动 cy
  • 无法删除或更新父行:外键约束失败(hibernate xml 映射)

    我想删除用户所属的所有组 但目前不起作用 我认为在映射 User hbm xml 或 Group hbm xml 级别缺少一些东西 但我不知道 错误是 无法删除或更新父行 外键约束失败 sharedmap groupe 约束FK gq7wi
  • extern"C" 与 extern 的区别

    我是否使用有什么区别extern C 整个标头的说明符 或指定extern对于每个功能 据我所知 没有 因为只有函数和变量可以外部链接 所以当我使用extern每个函数原型和外部变量之前都有说明符 我不需要使用全局extern C 宣言 示
  • 挂钩 Drupal 注册并根据业务逻辑验证用户信息

    我想挂接到注册模块 我已经拥有一个包含 50000 个使用我的旧网站的用户的数据库 现在我正在迁移到 Drupal 我还没有将条目迁移到 drupal 数据库 我将检查我的旧数据库 当用户尝试在 Drupal 中注册时 我需要检查他提供的用
  • 如何在 CALayer.contents 中添加 Stretchable UIImage?

    我有一个 CALayer 我想向其中添加一个可拉伸的图像 如果我只是这样做 layer contents id UIImage imageNamed grayTrim png resizableImageWithCapInsets UIEd
  • 自定义 MVVM 实现对比棱镜

    这个问题的灵感来自这个封闭的问题 Prism 实际上为开发者提供了什么 值得吗 https stackoverflow com questions 6242156 what does prism actually offer the dev
  • 如何在Eclipse上使用Papyrus生成代码?

    我将 Papyrus 安装在here http www eclipse org modeling mdt papyrus updates index php 那么如何使用Papyrus生成代码呢 要从 UML 生成 java 代码 您可以按
  • string.Replace(string, string) 是否创建额外的字符串?

    我们需要将包含日期的字符串转换为dd mm yyyy格式化为ddmmyyyy格式 如果您想知道为什么我将日期存储在字符串中 我的软件会处理批量交易文件 这是银行使用的基于行的文本文件格式 我目前正在这样做 string oldFormat
  • OpenSSL:无法验证 Experian URL 的第一个证书

    我正在尝试使用 OpenSSL 客户端验证 Ubuntu 10 10 中与 Experian 的 SSL 连接 openssl s client CApath etc ssl certs connect dm1 experian com 4
  • 如何在 VI 中整理 HTML 文件的缩进?

    我该如何修复他巨大的html文件的缩进 这些文件都乱七八糟的 我尝试了平常的 gg G command https stackoverflow com questions 506075 how do i fix the indentatio
  • 如何使用 DML 语法更新 BigQuery 中的嵌套记录?

    我有以下 BigQuery 架构 并且我正在尝试更新event dim date field 我使用标准 SQL 和新的 BigQuery DML 尝试了以下查询 UPDATE sara bigquery examples app even
  • Laravel Socialite - 谷歌登录失败“缺少必需的参数:代码”

    我在使用 Laravel Socialite 通过 Google API 登录用户时遇到了这个奇怪的问题 一切配置看似正常又普通 但我不断发现 错误缺少必需的参数 代码 但在本地主机上工作正常 Localhost Server 自动重定向的
  • 如何从我的应用程序加载cocoa dylib并调用dylib的方法

    我没有找到任何关于在运行时创建和加载 dylib 的教程 只是从苹果我看到了这一点dlopen将打开dylibs 我创建了一个可可动态库并添加了方法说 void displayMethod 我很困惑 比如我是否只需要复制 dylib文件到我
  • 如何减小apk的大小

    我的资源和可绘制对象只有 2MB java 和 xml 源只有 1MB 但构建项目后 apk 大小为 20MB 我将shrinkResources设置为true 并删除未使用的资源并使用 proguard 生成应用程序 有没有办法减少apk
  • 从数据框中聚合多列[重复]

    这个问题在这里已经有答案了 我有一个数据框 其中有一堆数据 这些数据在行的某些元素中用逗号连接 看起来像这样的东西 df lt data frame c 2012 2012 2012 2013 2013 2013 2014 2014 201
  • 如何以任意顺序比较两个 NSArray 的相同内容?

    我有两个NSArray其中数组的对象相同但可能位于不同的索引中 它应该打印两者相等 无论它们的索引如何 NSArray arr1 NSArray alloc initWithObjects aa bb 1 cc nil NSArray ar
  • 如何添加清理任务 - 未找到任务“清理”

    我在用https github com eriwen gradle js plugin https github com eriwen gradle js plugin我希望能够 干净 地运行任务 当我运行 gradle d clean 时
  • 将大写字母替换为小写字母

    我正在尝试使用正则表达式将大写字母替换为相应的小写字母 以便 EarTH 1 MerCury 0 2408467 venuS 0 61519726 becomes earth 1 mercury 0 2408467 venus 0 6151
  • 两个简单递归函数的 Big-O 表示法

    我在 Python 中有两个递归函数 只是想知道它们的大 O 表示法 这些的大 O 是什么 def cost n if n 0 return 1 else return cost n 1 cost n 1 def cost n if n 0
  • Windows 10 Iot/UWP 上的 Azure 存储库客户端?

    Windows 10 Iot Core UWP RPi 似乎不支持 Azure 存储客户端 不过 我将它用于 Blob 并且它对于表也可以正常工作 现在 更新到最新的稳定版 和 pre 尝试了两者 后 对表的访问挂起 await table