HTTP Multipart данные для объекта / массива дерева - PullRequest
0 голосов
/ 01 июня 2018

Существует ли какая-либо библиотека, предпочтительно простая и на C #, которая способна анализировать составные данные HTTP-запроса POST и превращать его в дерево, состоящее из объектов и / или узлов массива, и примитивные листы значений?

Другими словами, давайте следующий HTML:

<!DOCTYPE html>
<html>
    <body>
        <form action="whatever" method="POST">

            <input type="checkbox" name="boolean" checked="checked" />
            <input type="number" name="integer" value="123" />
            <input type="text" name="string" value="Hello world !" />

            <input type="checkbox" name="array[]" checked="chcked" />
            <input type="number" name="array[]" value="123" />
            <input type="text" name="array[]" value="Hello world !" />

            <input type="checkbox" name="object[boolean]" checked="checked" />
            <input type="number" name="object[integer]" value="123" />
            <input type="text" name="object[string]" value="Hello world !" />

        </form>
    </body>
</html>

, который сгенерирует следующие данные формы, которые я представлю как JSON, чтобы высказать свою точку зрения:

{
    "boolean"=true,
    "integer"=123,
    "string"="Hellow world !",
    "array[0]"=true,
    "array[1]"=123,
    "array[2]"="Hello world",
    "object[boolean]"=true,
    "object[integer]"=123,
    "object[string]"="Hello world"
}

Библиотека "разархивирует" данные, т.е. превратит их из карты без глубины в дерево, которое я также представлю как JSON:

{
    "boolean": true,
    "integer": 123,
    "string": "Hello world !",
    "array": [
        true,
        123,
        "Hello world !"
    ],
    "object": [
        "boolean": true,
        "integer": 123,
        "string": "Hello world !"
    ]
}

Это похоже на то, что делает PHP, когда оноинициализирует $ _POST.

Спасибо за вашу помощь.

...