难以访问 powershell azure 函数请求主体中的 json 值
Difficulties accessing json values in request body of powershell azure function
我有一个 Powershell Azure 函数,它接收一个 (json) 字符串作为请求正文。我需要访问 XMLA_String
、WorkspaceId
和 DatasetId
的值,以便将它们设置为变量。请让我知道如何
收到以下正文:
"{\"XMLA_String\":'{\"refresh\":{\"type\":\"full\",\"objects\":[{\"database\":\"<db>\",\"table\":\"<tab>\"}]}}',
\"WorkspaceId\":'<workspaceid>',
\"DatasetId\":'<datasetid>'}"
假设您的示例 JSON 中的换行符只是一个格式化工件,奇怪的是您似乎得到了 双重 JSON-encoded 数据.
因此,尝试应用 ConvertFrom-Json
两次(您已经确认解决了您的问题):
# Sample response received.
$json = @'
"{\"XMLA_String\":'{\"refresh\":{\"type\":\"full\",\"objects\":[{\"database\":\"<db>\",\"table\":\"<tab>\"}]}}',\"WorkspaceId\":'<workspaceid>',\"DatasetId\":'<datasetid>'}"
'@
$json | ConvertFrom-Json | ConvertFrom-Json
以上输出一个 [pscustomobject]
实例,其属性为 XMLA_String
、WorkspaceId
和 DatasetId
:
XMLA_String WorkspaceId DatasetId
----------- ----------- ---------
{"refresh":{"type":"full","objects":[{"database":"<db>","table":"<tab>"}]}} <workspaceid> <datasetid>
我有一个 Powershell Azure 函数,它接收一个 (json) 字符串作为请求正文。我需要访问 XMLA_String
、WorkspaceId
和 DatasetId
的值,以便将它们设置为变量。请让我知道如何
收到以下正文:
"{\"XMLA_String\":'{\"refresh\":{\"type\":\"full\",\"objects\":[{\"database\":\"<db>\",\"table\":\"<tab>\"}]}}',
\"WorkspaceId\":'<workspaceid>',
\"DatasetId\":'<datasetid>'}"
假设您的示例 JSON 中的换行符只是一个格式化工件,奇怪的是您似乎得到了 双重 JSON-encoded 数据.
因此,尝试应用 ConvertFrom-Json
两次(您已经确认解决了您的问题):
# Sample response received.
$json = @'
"{\"XMLA_String\":'{\"refresh\":{\"type\":\"full\",\"objects\":[{\"database\":\"<db>\",\"table\":\"<tab>\"}]}}',\"WorkspaceId\":'<workspaceid>',\"DatasetId\":'<datasetid>'}"
'@
$json | ConvertFrom-Json | ConvertFrom-Json
以上输出一个 [pscustomobject]
实例,其属性为 XMLA_String
、WorkspaceId
和 DatasetId
:
XMLA_String WorkspaceId DatasetId
----------- ----------- ---------
{"refresh":{"type":"full","objects":[{"database":"<db>","table":"<tab>"}]}} <workspaceid> <datasetid>