我创建了一个documentDB,并且能够在本地计算机上运行WebAPI项目时对其进行管理和查询。
但是,一旦我将此应用程序部署到Azure,它就会停止工作。
我启用了日志记录并添加了一堆跟踪命令,最终确认了失败点。
这是这一行:
var database = Client.CreateDatabaseQuery().Where(db => db.Id == databaseId).ToArray().FirstOrDefault();
从DocumentDB返回以下错误:
Microsoft.Azure.Documents.DocumentClientException: The input authorization token can't serve the request. Please check that the expected payload is built as per the protocol,
and check the key being used. Server used the following payload to sign: 'get sat, 16 may 2015 01:41:19 gmt
同样,这在本地工作正常。我从角度应用程序中获取API,并从DocumentDB返回数据。
但是在Azure上,没有骰子。
从跟踪日志记录中我可以看到Document Client已成功创建,并且从应用程序设置中恢复了正确的AuthKy和Endpoint。
任何想法可能是什么问题?
答案 0 :(得分:0)
确保您正在运行的机器的时钟时间准确无误。如果超过5分钟(或提前15分钟),您将获得身份验证错误。