尝试使用Azure的Node.js SDK时,我目前遇到403错误。下面的功能完美的作品时,我直接把它叫做:Node.js Azure文件服务 - 403错误调试
module.exports = function (file, callback) {
if (!fs.existsSync('./data')) {
mkdirp('./data', function (err) {
if (err) console.log(err)
})
}
fileService.getFileToStream('chatbot', '', file, fs.createWriteStream('data/' + file), function (err, res, response) {
if (!err) {
fs.readFile('data/' + file, 'utf8', function (err, data) {
if (!err) {
callback(null, data)
} else {
callback(err)
}
})
} else {
callback(err)
}
})
}
然而,当我把这个从我的更广泛的应用,然后我收到一个403错误:
{ StorageError: Forbidden
at Function.StorageServiceClient._normalizeError (/Users/tombarton/Sites/TestApplication/node_modules/azure-storage/lib/common/services/storageserviceclient.js:1174:23)
at FileService.StorageServiceClient._processResponse (/Users/tombarton/Sites/TestApplication/node_modules/azure-storage/lib/common/services/storageserviceclient.js:729:50)
at Request.processResponseCallback [as _callback] (/Users/tombarton/Sites/TestApplication/node_modules/azure-storage/lib/common/services/storageserviceclient.js:310:37)
at Request.self.callback (/Users/tombarton/Sites/TestApplication/node_modules/azure-storage/node_modules/request/request.js:187:22)
at emitTwo (events.js:106:13)
at Request.emit (events.js:191:7)
at Request.<anonymous> (/Users/tombarton/Sites/TestApplication/node_modules/azure-storage/node_modules/request/request.js:1044:10)
at emitOne (events.js:96:13)
at Request.emit (events.js:188:7)
at IncomingMessage.<anonymous> (/Users/tombarton/Sites/TestApplication/node_modules/azure-storage/node_modules/request/request.js:965:12)
name: 'StorageError',
message: 'Forbidden',
code: 'Forbidden',
statusCode: 403,
requestId: '51ce6605-001a-00c1-1d52-ae966b000000' }
的问题是,我不能似乎调试这个比403错误更进一步。由于代码完全独立工作,我知道访问密钥不是问题。 Azure存储允许您记录表,Blob和队列的访问数据,但不能用于文件服务,这似乎令人难以置信(https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/enabling-storage-logging-and-accessing-log-data#HowtoenableStorageLoggingusingtheWindowsAzureManagementPortal)。
有没有人有关于如何进一步调试的想法?
谢谢!我在ApplicationInsights上的最新版本(0.19),但是当我评论了与ApplicationInsights有关的所有内容时,该应用程序运行良好。我会看看,并可能会在ApplicationInsights回购中引发问题。 – tombraider