Power Query,使用表单数据发出http POST请求

Mr.*_*r.D 3 excel powerquery

我有一个REST API,它只接受带有表单数据的POST请求.

我知道在Power Query中JSON请求是这样的:

let
    url = "https://example.com",
    body = "{ ""first_param"": ""AAAAA"",  ""second_param"": ""BBBBBB""}",    

    Source = Json.Document(Web.Contents(url,[ Headers = [#"Content-Type"="application/json"], Content = Text.ToBinary(body) ] ))
in
    Source
Run Code Online (Sandbox Code Playgroud)

如何发送表单数据?

Ser*_*sev 8

使用Uri.BuildQueryString和Json.Document

let
    url = "https://example.com",
    body  = "{ ""first_param"": ""AAAAA"",  ""second_param"": ""BBBBBB""}",
    Parsed_JSON = Json.Document(body),
    BuildQueryString = Uri.BuildQueryString(Parsed_JSON),
    Source = Json.Document(Web.Contents(url,[Headers = [#"Content-Type"="application/json"], Content = Text.ToBinary(body) ] ))
in
    Source
Run Code Online (Sandbox Code Playgroud)

顺便说一句,你最好body直接构造成a record,避免文本字符串和双引号的双倍)