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 存储库客户端? 的相关文章

  • 使用 ADAL v3 使用 ClientID 对 Dynamics 365 进行身份验证

    我正在尝试对我们的在线 Dynamics CRM 进行身份验证以使用可用的 API 我能找到的唯一关于执行此操作的官方文档是 https learn microsoft com en us dynamics365 customer enga
  • 是否可以使用 http url 作为 DirectShow .Net 中源过滤器的源位置?

    我正在使用 DirectShow Net 库创建一个过滤器图 该过滤器图通过使用 http 地址和 WM Asf Writer 来流式传输视频 然后 在网页上 我可以使用对象元素在 Windows Media Player 对象中呈现视频源
  • C#.Net 邮件将进入垃圾邮件文件夹

    我正在从 ASP net Web 应用程序发送电子邮件 邮件发送成功 没有失败 但大多数都进入了垃圾邮件文件夹 请帮助我克服垃圾邮件过滤器 我的发送邮件代码 public void SendMail string FromAddress s
  • 混合模型优先和代码优先

    我们使用模型优先方法创建了一个 Web 应用程序 一名新开发人员进入该项目 并使用代码优先方法 使用数据库文件 创建了一个新的自定义模型 这 这是代码第一个数据库上下文 namespace WVITDB DAL public class D
  • 如何向 Mono.ZeroConf 注册服务?

    我正在尝试测试 ZeroConf 示例http www mono project com Mono Zeroconf http www mono project com Mono Zeroconf 我正在运行 OpenSuse 11 和 M
  • Android NDK 代码中的 SIGILL

    我在市场上有一个 NDK 应用程序 并获得了有关以下内容的本机崩溃报告 SIGILL信号 我使用 Google Breakpad 生成本机崩溃报告 以下是详细信息 我的应用程序是为armeabi v7a with霓虹灯支持 它在 NVIDI
  • Unity手游触摸动作不扎实

    我的代码中有一种 错误 我只是找不到它发生的原因以及如何修复它 我是统一的初学者 甚至是统一的手机游戏的初学者 我使用触摸让玩家从一侧移动到另一侧 但问题是我希望玩家在手指从一侧滑动到另一侧时能够平滑移动 但我的代码还会将玩家移动到您点击的
  • C# 获取数据表中所有重复行的计数

    我通过运行存储过程来填充数据集 并且从数据集中填充数据表 DataSet RawDataSet DataAccessHelper RunProcedure storedprocedureName this will just return
  • 在 azure blob 存储中就地创建 zip 文件

    我将文件存储在 Blob 存储帐户内的一个容器中 我需要在第二个容器中创建一个 zip 文件 其中包含第一个容器中的文件 我有一个使用辅助角色和 DotNetZip 工作的解决方案 但由于 zip 文件的大小最终可能达到 1GB 我担心在进
  • 让网络摄像头在 OpenCV 中工作

    我正在尝试让我的网络摄像头在 Windows 7 64 位中的 OpenCV 版本 2 2 中捕获视频 但是 我遇到了一些困难 OpenCV 附带的示例二进制文件都无法检测到我的网络摄像头 最近我发现这篇文章表明答案在于重新编译一个文件 o
  • 对于 C# Express 用户来说,有哪些好的工具可以识别可能重复的代码? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 也可以看看 有什么工具可以检查重复的 VB NET 代码吗 https stackoverflow c
  • 如何从 Boost.PropertyTree 复制子树

    我有一些boost property tree ptree 我需要树来删除一些具有特定标签名称的元素 例如 xml 表示源ptree如下
  • .NET 和 Mono 之间的开发差异

    我正在研究 Mono 和 NET C 将来当项目开发时我们需要在 Linux 服务器上运行代码 此时我一直在研究 ASP NET MVC 和 Mono 我运行 Ubuntu 发行版 想要开发 Web 应用程序 其他一些开发人员使用 Wind
  • 以编程方式创建 Blob 存储容器

    我有一个要求 即在创建公司时 在我的 storageaccount 中创建关联的 blob 存储容器 并将容器名称设置为传入的字符串变量 我已尝试以下操作 public void AddCompanyStorage string subDo
  • 构建 C# MVC 5 站点时项目之间的处理器架构不匹配

    我收到的错误如下 2017 年 4 月 20 日构建 13 23 38 C Windows Microsoft NET Framework v4 0 30319 Microsoft Common targets 1605 5 警告 MSB3
  • 在 C# 的 WebAPI 中的 ApiController 上使用“传输编码:分块”提供数据

    我需要服务分块传输使用编码数据API控制器 因为我无权访问HttpContext or the Http请求 我有点不知道在哪里写入响应以及在哪里刷新它 设置如下 public class MyController ApiControlle
  • 如何从 Windows Phone 7 模拟器获取数据

    我有一个 WP7 的单元测试框架 它在手机上运行 结果相当难以阅读 因此我将它们写入 XDocument 我的问题是 如何才能将这个 XML 文件从手机上移到我的桌面上 以便我可以实际分析结果 到目前为止 我所做的是将 Debugger B
  • 任何人都可以清楚地告诉如何在不使用像 这样的预定义函数的情况下找到带有小数值或小数值的指数吗? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 例如 2 0 5 1 414 所以想要 我是 c 的新手 所以请解释简单的逻辑 如果不是复杂的逻辑也足够了 在数学中 从整数取幂到实数
  • 如果将变量设置为等于新对象,旧对象会发生什么?

    假设我们有一个 X 类not有一个超载的operator 功能 class X int n X n 0 X int n n n int main X a 1 an object gets constructed here more code
  • winform c# 中的弹出窗口

    我正在开发一个需要弹出窗口的项目 但问题是我还希望能够通过表单设计器在此弹出窗口中添加文本框等 所以基本上我有一个按钮 当您单击它时 它将打开我在表单设计器中设计的另一个窗口 我一直在谷歌搜索 但还没有找到我需要的东西 所以我希望你们能帮助

随机推荐

  • 安装 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