Node-RED中的HTTP请求身份验证

时间:2019-04-10 07:10:08

标签: azure http httprequest node-red azure-blob-storage

我试图在Node-RED中使用PUT请求,以便将数据保存到我的Azure Blob存储帐户中。 GET请求工作得很好,但是其余的只是发送消息错误。我发现我需要使用身份验证才能使用它们,这就是整个问题。

对于PUT-Request(基本上是向 存储帐户)我这样写:

https://myaccount.blob.core.windows.net/mycontainer/myblob并将“ myaccount”替换为我的存储帐户名。但是我得到了以下消息(在message.payload中):

ResourceNotFound指定的资源不存在。 申请编号:9b69378d-201e-0082-6da2-eba158000000 时间:2019-04-05T11:28:35.3349540Z

我现在的问题是我不知道从哪里获得用于基本身份验证的用户名和密码。我只能在Azure服务中找到访问密钥和共享访问签名(SAS),而且我不知道如何将它们集成到我的HTTP请求链接中。有帮助吗?

*********编辑 如果我在请求链接之后编写SAS,则会在有效负载中返回此消息: <?xml version="1.0" encoding="utf-8"?><Error><Code>MissingRequiredHeader</Code><Message>An HTTP header that's mandatory for this request is not specified.RequestId:cdaa8fbc-201e-002b-2373-ef602a000000Time:2019-04-10T07:59:21.3226304Z</Message><HeaderName>x-ms-blob-type</HeaderName></Error>

在标题中:

{"content-length":"295","content-type":"application/xml","server":"Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0","x-ms-request-id":"cdaa8fbc-201e-002b-2373-ef602a000000","x-ms-version":"2018-03-28","x-ms-error-code":"MissingRequiredHeader","date":"Wed, 10 Apr 2019 07:59:20 GMT","connection":"close","x-node-red-request-node":"e24237e0"}

0 个答案:

没有答案
相关问题