ostepu / ostepu-core

OSTEPU: Open Source Tutorial and Exercise Platform for Universities
8 stars 3 forks source link

Model.php, mit OPTIONS arbeiten #315

Closed tilluhlig closed 7 years ago

tilluhlig commented 7 years ago

Mit der Methode OPTIONS sollen Befehlsbeschreibungen abgerufen werden können

tilluhlig commented 7 years ago

Wenn man nun die Anfrage OPTIONS http://localhost/uebungsplattform/DB/DBUser/user/user/1 stellt, dann erhält man eine Liste von Anfragedaten (mit unterschiedlichen Methoden), welche auf diese Anfrage passen.

[
    {
        "name": "removeUser",
        "path": "\/user\/user\/:userid",
        "method": "DELETE",
        "description": {
            "de": "setzt U_flag = 0 und l\u00f6st damit das Entfernen der pers\u00f6nlichen Nutzerdaten aus (entfernt das Nutzerkonto nicht), zus\u00e4tzlich wird eine eventuell aktive Session entfernt"
        },
        "placeholder": [
            {
                "name": "userid",
                "regex": "%^([a-zA-Z0-9\u00e4\u00f6\u00fc\u00c4\u00d6\u00dc\u00df]+)$%",
                "description": {
                    "de": "die ID eines Nutzers oder ein Nuzername (`User`)"
                }
            }
        ],
        "inputType": "",
        "outputType": "User",
        "callback": "removeUser",
        "seqInput": "TRUE",
        "singleOutput": "FALSE"
    },
    {
        "name": "getUser",
        "path": "\/user\/user\/:userid",
        "method": "GET",
        "description": {
            "de": "liefert einen einzelnen Nutzer (anhand des Nutzernamens oder der ID)"
        },
        "placeholder": [
            {
                "name": "userid",
                "regex": "%^([a-zA-Z0-9\u00e4\u00f6\u00fc\u00c4\u00d6\u00dc\u00df]+)$%",
                "description": {
                    "de": "die ID eines Nutzers oder ein Nuzername (`User`)"
                }
            }
        ],
        "inputType": "",
        "outputType": "User",
        "callback": "getMatch",
        "singleOutput": "TRUE",
        "seqInput": "TRUE"
    },
    {
        "name": "editUser",
        "path": "\/user\/user\/:userid",
        "method": "PUT",
        "description": {
            "de": "editiert ein vorhandenes Nutzerkonto"
        },
        "placeholder": [
            {
                "name": "userid",
                "regex": "%^([a-zA-Z0-9\u00e4\u00f6\u00fc\u00c4\u00d6\u00dc\u00df]+)$%",
                "description": {
                    "de": "die ID eines Nutzers oder ein Nuzername (`User`)"
                }
            }
        ],
        "inputType": "User",
        "outputType": "User",
        "callback": "editUser",
        "seqInput": "TRUE",
        "singleOutput": "FALSE"
    }
]