Uso del valore restituito della funzione di Azure

Questo articolo illustra come funzionano i valori restituiti all'interno di una funzione. Nei linguaggi con un valore restituito, è possibile associare un'associazione di output della funzione al valore restituito.

impostare la proprietà name in function.json su $return. Se sono presenti più associazioni di output, usare il valore restituito per una sola di tali associazioni.

La modalità di utilizzo dei valori restituiti dipende dalla modalità C# usata nell'app per le funzioni:

Per informazioni dettagliate ed esempi, vedere Binding di output nella guida del ruolo di lavoro .NET.

Di seguito è riportata l'associazione di output nel file function.json:

{
    "name": "$return",
    "type": "blob",
    "direction": "out",
    "path": "output-container/{id}"
}

Ecco il codice JavaScript:

module.exports = function (context, input) {
    var json = JSON.stringify(input);
    context.log('Node.js script processed queue message', json);
    return json;
}

Di seguito è riportata l'associazione di output nel file function.json:

{
    "name": "Response",
    "type": "blob",
    "direction": "out",
    "path": "output-container/{blobname}"
}

Ecco il codice di PowerShell che usa il valore restituito per un'associazione di output HTTP:

Push-OutputBinding -Name Response -Value ([HttpResponseContext]@{
    StatusCode = [HttpStatusCode]::OK
    Body = $blobname
    })

Di seguito è riportata l'associazione di output nel file function.json:

{
    "name": "$return",
    "type": "blob",
    "direction": "out",
    "path": "output-container/{id}"
}

Ecco il codice Python:

def main(input: azure.functions.InputStream) -> str:
    return json.dumps({
        'name': input.name,
        'length': input.length,
        'content': input.read().decode('utf-8')
    })

Applicare l'annotazione dell'associazione di output al metodo della funzione. Se sono presenti più associazioni di output, usare il valore restituito per una sola di tali associazioni.

Ecco il codice Java che usa il valore restituito per un'associazione di output:

@FunctionName("QueueTrigger")
@StorageAccount("AzureWebJobsStorage")
@BlobOutput(name = "output", path = "output-container/{id}")
public static String run(
  @QueueTrigger(name = "input", queueName = "inputqueue") WorkItem input,
  final ExecutionContext context
) {
  String json = String.format("{ \"id\": \"%s\" }", input.id);
  context.getLogger().info("Java processed queue message. Item=" + json);
  return json;
}

Passaggi successivi