【问题标题】:Can't upload to Azure Storage after deploy Koa app to Azure App Service将 Koa 应用部署到 Azure 应用服务后无法上传到 Azure 存储
【发布时间】:2021-06-02 23:28:24
【问题描述】:

当应用在本地运行时,我可以将文件上传到 Azure Blob 存储。

但是当我将应用部署到 Azure 应用服务时,它总是响应 502 Bad Gateway

我使用库koa-body 来处理上传文件

const koaBody = require('koa-body')({ multipart: true, uploadDir: '.' });
const blobServiceClient = BlobServiceClient.fromConnectionString(AZURE_STORAGE_CONNECTION_STRING);
const videoContainerClient = blobServiceClient.getContainerClient(AZURE_VIDEO_STORAGE_CONTAINER);
const blobVideoName = `${fileName}.${fileExtension}`;
const blockBlobVideo = videoContainerClient.getBlockBlobClient(blobVideoName);
const uploadVid = blockBlobVideo.uploadFile(filePath);

我认为问题是我没有将文件写入os.tmpDir()的权限,所以我尝试转到Kudu Debug Console并将chmod -R 0755设置为home/site/wwwroot/public/tmp,我认为该文件夹是os.tmpDir()。但它说我没有权限

感谢任何帮助

【问题讨论】:

    标签: file-upload azure-web-app-service azure-blob-storage koa koa-bodyparser


    【解决方案1】:

    你可以参考我的示例代码。(Download my samle code)

    测试结果。

    POST 测试网址:https://yourappname.azurewebsites.net/user/upload

    【讨论】:

    • 我没有看到侧边栏包含BLOB CONTAINERSFILE SHARES,就像您的图片中一样。你在哪里点击得到这个?
    • @KhiemNguyen 在门户网站上。 i.imgur.com/q02BMBu.png
    • @KhiemNguyen 你也可以download azure storage explorer
    • @KhiemNguyen 如果我的解决方案对您有启发或帮助,您能否将我的答案标记为accepted,谢谢~
    • 天啊,我发现问题是我使用fluent-ffmpeg 从视频上传生成缩略图。从代码中删除它后,我可以正确上传。感谢您的支持,我会再发一个帖子。
    猜你喜欢
    • 2021-11-29
    • 2021-02-07
    • 1970-01-01
    • 2020-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-26
    相关资源
    最近更新 更多