Empty string cannot be passed in HttpTrigger query string
Bewertung
Dieses Issue wurde noch nicht bewertet.
Beschreibung
Repro steps
- Run the following function from templates:
package com.function;
import java.util.*;
import com.microsoft.azure.functions.annotation.*;
import com.microsoft.azure.functions.*;
/**
* Azure Functions with HTTP Trigger.
*/
public class HttpTriggerJava1 {
/**
* This function listens at endpoint "/api/HttpTriggerJava1". Two ways to invoke it using "curl" command in bash:
* 1. curl -d "HTTP Body" {your host}/api/HttpTriggerJava1
* 2. curl {your host}/api/HttpTriggerJava1?name=HTTP%20Query
*/
@FunctionName("HttpTriggerJava1")
public HttpResponseMessage run(
@HttpTrigger(name = "req", methods = {HttpMethod.GET, HttpMethod.POST}, authLevel = AuthorizationLevel.FUNCTION) HttpRequestMessage<Optional<String>> request,
final ExecutionContext context) {
context.getLogger().info("Java HTTP trigger processed a request.");
// Parse query parameter
String query = request.getQueryParameters().get("name");
String name = request.getBody().orElse(query);
if (name == null) {
return request.createResponseBuilder(HttpStatus.BAD_REQUEST).body("Please pass a name on the query string or in the request body").build();
} else {
return request.createResponseBuilder(HttpStatus.OK).body("Hello, " + name).build();
}
}
}
- Send the following request: http://localhost:7071/api/HttpTriggerJava1?name=
Expected behavior
name should be set to an empty string and the function should return "Hello, "
Actual behavior
name is set to null and the function returns "Please pass a name on the query string or in the request body"
Known workarounds
None
Related information
Similar issue in PowerShell worker: https://github.com/Azure/azure-functions-powershell-worker/issues/895
- Vorherrschende Sprache
- Java
- Sterne
- 103
- Forks
- 74
- Ø Merge
- 4 T. 15 Std.
- Gemergte PRs (30 T.)
- 1
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus Azure/azure-functions-java-worker
-
Annoucement Documentation java
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 15/100
-
[Feature] Support raw Kafka record (KafkaRecord) binding with Protobuf deserializationEvtl. vergeben @TsuyoshiUshio hat das vor 188 Tagen übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 50/100
-
[Feature] Support for reverse propagation of request telemetry tagsEvtl. vergeben @arnabnandy7 hat das vor 82 Tagen übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
-
[Feature] Support OpenTelemetry BaggageEvtl. vergeben @arnabnandy7 hat das vor 82 Tagen übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
Alle Issues in Azure/azure-functions-java-worker
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 67/100
quarkiverse/quarkus-google-cloud-services#1188 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Component: Frontend Component: Web Component Type: Maintenance
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
it-at-m/refarch-templates#1944 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
priority: p2 type: bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
googleapis/java-genai#1372 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 60/100