3

Web.Contents メソッドは Content を Binary として受け取ります

私はこのコードを使用します。できます

query = "{
    ""field1"" : ""value1"",
    ""field2"" : ""value2"",
    ""field3"" : {
        ""sub_field_3_1"" : [""value_3_1_1"", ""value_3_1_2"", ""value_3_1_1""],
        ""sub_field_3_2"" : [""value_3_2_1"", ""value_3_2_2"", ""value_3_2_1""]
        }
    }",

content = Text.ToBinary(query),

Web.Contents("https://my_url", [
    Headers = [#"Content-Type"="text/xml; charset=utf-8"],
    Content=content
])

二重変換を行う理由がないため、これは良い回避策ではないことは理解しています。しかし、レコードを適用する方法が見つかりませんでした。次のようになります。

record = [
    field1 = value1,
    field2 = value2,
    field3 = [
        sub_field_3_1 = {value_3_1_1, value_3_1_2, value_3_1_1},
        sub_field_3_2 = {value_3_2_1, value_3_2_2, value_3_2_1}
    ]
],

content = SOME_CONVERTER(record),

Web.Contents("https://my_url", [
    Headers = [#"Content-Type"="text/xml; charset=utf-8"],
    Content = content
])

Uri.BuildQueryString ( Power Query の Web.Contents を使用して multipart/form-data を POST する方法)を使用しようとしましたが、バイナリを適切に形成しません

record = [
    field1 = value1,
    field2 = value2,
    field3 = [
        sub_field_3_1 = {value_3_1_1, value_3_1_2, value_3_1_1},
        sub_field_3_2 = {value_3_2_1, value_3_2_2, value_3_2_1}
    ]
],

content = Text.ToBinary(Uri.BuildQueryString(record)),

Web.Contents("https://my_url", [
    Headers = [#"Content-Type"="text/xml; charset=utf-8"],
    Content=content
]

より良い回避策はありますか?

4

2 に答える 2

1

SOME_CONVERTER == Json.FromValue

let
    record = [
        field1 = "value1",
        field2 = "value2",
        field3 = [
            sub_field_3_1 = {"value_3_1_1", "value_3_1_2", "value_3_1_1"},
            sub_field_3_2 = {"value_3_2_1", "value_3_2_2", "value_3_2_1"}
        ]
    ],
    content = Json.FromValue(record),
    web=Web.Contents("https://my_url", [
        Headers = [#"Content-Type"="text/xml; charset=utf-8"],
        Content = content
    ])
in
    web
于 2016-10-30T05:19:21.893 に答える