如何通过VSC将PowerShell api部署到Azure函数?

如何通过VSC将PowerShell api部署到Azure函数?,powershell,azure,visual-studio-code,azure-functions,Powershell,Azure,Visual Studio Code,Azure Functions,如何将Powershell api部署到Azure函数。本文只讨论部署JavaScript函数 在通过Azure功能扩展创建“项目”时,在语言选择期间没有选择“Powershell”的选项 这是从Azure门户部署时的默认Powershell api # POST method: $req $requestBody = Get-Content $req -Raw | ConvertFrom-Json $name = $requestBody.name # GET method: each que

如何将Powershell api部署到Azure函数。本文只讨论部署JavaScript函数

在通过Azure功能扩展创建“项目”时,在语言选择期间没有选择“Powershell”的选项

这是从Azure门户部署时的默认Powershell api

# POST method: $req
$requestBody = Get-Content $req -Raw | ConvertFrom-Json
$name = $requestBody.name
# GET method: each querystring parameter is its own variable
if ($req_query_name) 
  {$name = $req_query_name}
Out-File -Encoding Ascii -FilePath $res -inputObject "Hello $name"
我尝试使用VSC Azure函数的“deploy”按钮直接部署以下代码。但是我得到了下面的错误

Unable to write Workspace settings because no workspace is opened. Please open a workspace first and try again
无法写入工作区设置,因为没有打开工作区。请先打开工作区,然后重试

在VSCode中,我们必须先打开文件夹或创建函数项目,否则无法创建用于保存工作区设置的文件,并且在尝试修改工作区设置(如运行时、语言和模板过滤器)时会出现错误

在VSCodereferences中开发Azure函数的详细步骤来自:

提示

都是实验性的,所以不要在生产中使用对2.x运行时的支持也在进行中

在本地调试函数

1.x用于操作系统Windows.NET Framework,2.x用于跨平台.NET核心

安装Azure功能扩展

在浏览器中输入vscode:extension/ms-azuretools.vscode-azurefunctions,它将打开vscode并安装扩展

创建功能项目

在文件管理器中创建一个空文件夹;说我的朋友

登录Azure帐户

在Azure函数扩展中,单击创建新项目并指向已创建的文件夹MyFunctionApp

选择语言JavaScript

创建一个函数

单击创建函数和浏览器MyFunctionApp文件夹。然后您可以看到下拉菜单,如下所示。根据安装的cli自动设置项目运行时

单击ChangeTemplateFilter并将其更改为All,以便我们可以看到所有可用的模板

单击更改项目语言以选择类似Powershell的实验语言

按照rest提示创建Http触发器

在本地调试或运行函数

对于c、javascript和java,请随意使用F5

要在本地以实验语言运行函数,请在VSCodeCtrl+`中打开终端并运行func host start,不支持调试,因此不要使用F5

要测试httptrigger,请在函数url后面加上?name=World!从您的URL获取Hello World响应

部署


单击Deploy to Function App按钮并按照提示进行操作。

@AyanMullick Yes,此Node.js和npm要求用于安装Azure Function core工具以在本地运行功能。如果您只想在线部署和测试,则无需安装与节点相关的资源。@如果您试图在本地运行function cli,则需要在Windows上安装nodejs和npm。$是Mac等操作系统上的外壳信号,如果您安装了function core tools,请运行func。@AyanMullick已经用详细信息更新了我的答案,看看它是否对您有用。采取的步骤1。创建函数2。选择一个空白文件夹3。它会提示项目初始化。我同意。4.选择JavaScript进行语言选择5。更改项目运行时间并~1批准用于生产6。由于没有打开工作区,因此无法写入工作区设置时会出现错误。请先打开一个工作区,然后再试一次@AyanMullick收到了。您应该先在VSCode中打开文件夹,或者先创建函数项目,否则无法创建用于保存工作区设置的文件,并且在尝试修改运行时时会出现错误。