簡體   English   中英

從前端應用調用谷歌雲 Function

[英]Call Google Cloud Function from front-end application

我正在實施一個react-native應用程序。 本質上,從這個前端應用程序,我想向 Yelp Fusion API 發出 GET 請求,這需要一個私有 API 密鑰(我已經保存在我的筆記中)。

考慮到應該從服務器端執行帶有私鑰的 GET 請求,而不是前端react-native應用程序,我想通過 Google Cloud Functions 或 Firebase Functions 來實現此功能。

本質上,我如何從前端 Javascript 客戶端觸發這樣的事件,我需要在 Firebase 或 Google Cloud Functions 上設置什么才能使其工作?

我能夠在 Firebase 函數中編寫 function,但我不確定如何將 GET 請求寫入 Google Cloud Platform 外部的 URL。 我也不知道如何觸發請求並從客戶端接收數據。

您可以使用公共 HTTP 觸發器創建雲 Function來完成此操作。

該頁面上的示例包括基於 HTTP 的 Cloud Functions。

這是有關調用 http 觸發器的文檔。

要使用公共 HTTP 觸發器部署雲 Function:

gcloud functions deploy MYFUNCTION --runtime <your runtime> --trigger-http --allow-unauthenticated

此命令允許匿名訪問來調用您的函數,通常您需要經過身份驗證才能這樣做。

一旦你打開了一個到 inte.net 的觸發器,盡管任何人都可以調用它,所以請記住你接受和傳回的數據。 您可能還想為包含 function 的項目設置預算,以防有人打電話給它不斷地為您增加賬單。

Firebase 的 Cloud Functions 是 Google Cloud Functions 的精簡包裝器,因此您可以用於 GCF 的任何方法(例如 Jake 在他們的回答中提出的方法)也適用於 Firebase。

有兩種方法可以使用 Firebase 從您的應用程序代碼中直接調用 Cloud Function:

  1. 創建一個 HTTP 端點並使用諸如fetch之類的方法從您的應用程序代碼中調用它。 這在通過 HTTP 請求調用函數的文檔中進行了描述
  2. 在 Firebase 中實現所謂的 Callable function,然后通過 SDK 從您的應用程序代碼中調用它。有關這方面的更多信息,請參閱有關從您的應用程序調用函數的文檔。

第二種類型本質上包裝了第一種類型,但添加了一些功能,如命名參數,並自動傳遞 ID 令牌和一些其他參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM