Wie überprüfe ich, ob der Anforderungstext leer ist?

Wie überprüfe ich, ob der Anforderungstext leer ist?

Ich habe versucht, es so zu machen

        if ($request_uri ~ ^/page/submit$ ) {
         set $test  A; 
        }
        if ($request_body = '') {
         set $test  B;
        }
        if ($test = AB) { 
          return 403;
        }

Aber ich bekomme 200 als Antwort auf die Anfragecurl --request POST http://example.com/page/submit

Antwort1

Versuchen Sie dies, Sie müssen Ihre Tests anhängen, damit Sie auf "AB" testen können. Aber brauchen Sie es dann wirklich in der Serverkonfiguration?

set $test    "";
if ($uri ~* "^/page/submit$") {
    set $test    "A";
}

if ($request_body = '') {
    set $test    "${test}B";
}

if ($test = "AB") { 
    return       403;
}

verwandte Informationen