如何下载 Azure Function (Python) .zip 文件?
How to download Azure Function (Python) .zip file?
文档 here(自 2018 年起)说从门户单击 Download app content
以检索 Azure 函数的 .zip 文件。
但是,这个选项对于我的 Python 函数是灰色的:
该文档继续提供使用 REST API 和以下 url https://<function_app>.scm.azurewebsites.net/api/zip/site/wwwroot/
.
检索 .zip 文件的替代方法
不幸的是,这会下载一个 download.zip
文件,其中仅包含 hosts.json
文件,而不是函数代码和相关文件。
那么,如何从 Azure 门户、REST API 或 scm 后端下载我的 Python 函数作为 .zip 文件?
编辑 1:
到目前为止尝试这两个建议的解决方案也没有结果。
AzureWebJobsStorage
: 没有 scm-deployments
容器可用。
FTPS 选项:没有可用的 .zip 文件。只有 host.json
文件。
更新:
根据您的评论,您说您的函数应用程序只有 'host.json' 文件。所以你之前没有部署 azure 函数?或者你部署失败? Ftps(高级计划和应用程序服务计划)或一个一个地复制文件是为了获取 zip 文件的内容。从 blob 存储中的 'scm-releases' 容器获取 zip 文件应该是正确的方法。
这是 python 天蓝色函数的 structure。所以只要获取所有的文件就可以得到zip文件的内容。如果您在门户网站上检查时没有找到任何东西,我想您可能部署失败或之前从未部署过函数应用程序?如果您之前部署成功,zip 文件应该在 'scm-releases' 容器中生成。
原答案:
python azure 功能的'Download app content' 按钮似乎现在不可用。您提供的文档更新于 2018 年 8 月 12 日,但是 python 的 azure function 支持是从 August 18, 2019 开始的,因此 'Download function app files' 的文档可能不适用。我想也许你可以向官方提交工单,这个按钮不可用。
您可以使用 ftp 获取应用内容,但仅限高级计划和应用服务计划:
如果是基于消费计划,需要在每个触发器中点击,复制代码。
触发器外的文件在这个地方:
如果您有权访问函数的存储帐户,则只需从 scm-releases
容器下载即可。
您可以在门户(应用程序设置)的配置下的 AzureWebJobsStorage
参数中找到帐户连接字符串。
终于!想通了。
下载已部署的 Python Azure 函数的 .zip 文件:
- 转到
https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/
- 主体看起来像:
[
{
"name": "20210507210231.zip",
"size": 22920602,
"mtime": "2021-05-07T21:03:30.9505229+00:00",
"crtime": "2021-05-07T21:03:30.9505229+00:00",
"mime": "application/x-zip-compressed",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/20210507210231.zip",
"path": "/home/data/SitePackages/20210507210231.zip"
},
{
"name": "20210512182244.zip",
"size": 91280954,
"mtime": "2021-05-12T18:22:46.4017597+00:00",
"crtime": "2021-05-12T18:22:46.4017597+00:00",
"mime": "application/x-zip-compressed",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/20210512182244.zip",
"path": "/home/data/SitePackages/20210512182244.zip"
},
{
"name": "20210520163007.zip",
"size": 22248931,
"mtime": "2021-05-20T16:31:13.4771898+00:00",
"crtime": "2021-05-20T16:31:13.4771898+00:00",
"mime": "application/x-zip-compressed",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/20210520163007.zip",
"path": "/home/data/SitePackages/20210520163007.zip"
},
{
"name": "packagename.txt",
"size": 18,
"mtime": "2021-05-20T16:31:20.8453653+00:00",
"crtime": "2021-05-20T16:31:20.8453653+00:00",
"mime": "text/plain",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/packagename.txt",
"path": "/home/data/SitePackages/packagename.txt"
},
{
"name": "packagepath.txt",
"size": 23,
"mtime": "2021-05-12T18:22:46.5567703+00:00",
"crtime": "2021-05-12T18:22:46.5567703+00:00",
"mime": "text/plain",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/packagepath.txt",
"path": "/home/data/SitePackages/packagepath.txt"
}
]
- 去
href
URL显示最新的mtime
下载文件
- 注意:最新的时间戳在列表中靠后(至少对我而言)
已记录 here
文档 here(自 2018 年起)说从门户单击 Download app content
以检索 Azure 函数的 .zip 文件。
但是,这个选项对于我的 Python 函数是灰色的:
该文档继续提供使用 REST API 和以下 url https://<function_app>.scm.azurewebsites.net/api/zip/site/wwwroot/
.
不幸的是,这会下载一个 download.zip
文件,其中仅包含 hosts.json
文件,而不是函数代码和相关文件。
那么,如何从 Azure 门户、REST API 或 scm 后端下载我的 Python 函数作为 .zip 文件?
编辑 1: 到目前为止尝试这两个建议的解决方案也没有结果。
AzureWebJobsStorage
: 没有scm-deployments
容器可用。FTPS 选项:没有可用的 .zip 文件。只有
host.json
文件。
更新:
根据您的评论,您说您的函数应用程序只有 'host.json' 文件。所以你之前没有部署 azure 函数?或者你部署失败? Ftps(高级计划和应用程序服务计划)或一个一个地复制文件是为了获取 zip 文件的内容。从 blob 存储中的 'scm-releases' 容器获取 zip 文件应该是正确的方法。
这是 python 天蓝色函数的 structure。所以只要获取所有的文件就可以得到zip文件的内容。如果您在门户网站上检查时没有找到任何东西,我想您可能部署失败或之前从未部署过函数应用程序?如果您之前部署成功,zip 文件应该在 'scm-releases' 容器中生成。
原答案:
python azure 功能的'Download app content' 按钮似乎现在不可用。您提供的文档更新于 2018 年 8 月 12 日,但是 python 的 azure function 支持是从 August 18, 2019 开始的,因此 'Download function app files' 的文档可能不适用。我想也许你可以向官方提交工单,这个按钮不可用。
您可以使用 ftp 获取应用内容,但仅限高级计划和应用服务计划:
如果是基于消费计划,需要在每个触发器中点击,复制代码。
触发器外的文件在这个地方:
如果您有权访问函数的存储帐户,则只需从 scm-releases
容器下载即可。
您可以在门户(应用程序设置)的配置下的 AzureWebJobsStorage
参数中找到帐户连接字符串。
终于!想通了。
下载已部署的 Python Azure 函数的 .zip 文件:
- 转到
https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/
- 主体看起来像:
[
{
"name": "20210507210231.zip",
"size": 22920602,
"mtime": "2021-05-07T21:03:30.9505229+00:00",
"crtime": "2021-05-07T21:03:30.9505229+00:00",
"mime": "application/x-zip-compressed",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/20210507210231.zip",
"path": "/home/data/SitePackages/20210507210231.zip"
},
{
"name": "20210512182244.zip",
"size": 91280954,
"mtime": "2021-05-12T18:22:46.4017597+00:00",
"crtime": "2021-05-12T18:22:46.4017597+00:00",
"mime": "application/x-zip-compressed",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/20210512182244.zip",
"path": "/home/data/SitePackages/20210512182244.zip"
},
{
"name": "20210520163007.zip",
"size": 22248931,
"mtime": "2021-05-20T16:31:13.4771898+00:00",
"crtime": "2021-05-20T16:31:13.4771898+00:00",
"mime": "application/x-zip-compressed",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/20210520163007.zip",
"path": "/home/data/SitePackages/20210520163007.zip"
},
{
"name": "packagename.txt",
"size": 18,
"mtime": "2021-05-20T16:31:20.8453653+00:00",
"crtime": "2021-05-20T16:31:20.8453653+00:00",
"mime": "text/plain",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/packagename.txt",
"path": "/home/data/SitePackages/packagename.txt"
},
{
"name": "packagepath.txt",
"size": 23,
"mtime": "2021-05-12T18:22:46.5567703+00:00",
"crtime": "2021-05-12T18:22:46.5567703+00:00",
"mime": "text/plain",
"href": "https://<function-app-name>.scm.azurewebsites.net/api/vfs/data/SitePackages/packagepath.txt",
"path": "/home/data/SitePackages/packagepath.txt"
}
]
- 去
href
URL显示最新的mtime
下载文件 - 注意:最新的时间戳在列表中靠后(至少对我而言)
已记录 here