web-dev-qa-db-ja.com

変数をGoogle Cloud Functionsに渡す

ベータ版Python 3.7ランタイムでHTTPトリガーを使用してGoogle Cloud Functionを書き終えたところです。今、関数を呼び出すときに文字列変数を関数に渡す方法を理解しようとしています。ドキュメントを読みましたが、何も見つかりませんでした。

私のトリガーは似ています:

https://us-central1-*PROJECT_ID*.cloudfunctions.net/*FUNCTION_NAME*

Cloud Functionsの仕組みを誤解していますか?それらに変数を渡すことさえできますか?

8
pinglock

変数を任意のURLに渡すのと同じ方法で、変数を関数に渡します。

1.クエリパラメータ付きのGETを使用:

def test(request):
    name = request.args.get('name')
    return f"Hello {name}"
$ curl -X GET https://us-central1-<PROJECT>.cloudfunctions.net/test?name=World
Hello World

2.フォームでPOSTを使用:

def test(request):
    name = request.form.get('name')
    return f"Hello {name}"
$ curl -X POST https://us-central1-<PROJECT>.cloudfunctions.net/test -d "name=World"
Hello World

3. JSONでPOSTを使用:

def test(request):
    name = request.get_json().get('name')
    return f"Hello {name}"
$ curl -X POST https://us-central1-<PROJECT>.cloudfunctions.net/test -d '{"name":"World"}'
Hello World

詳細はこちら: https://cloud.google.com/functions/docs/writing/http

14
Dustin Ingram