400-638-8808
|
微信公眾號(hào)








穩(wěn)定可靠 永不間斷

海外收發(fā) 暢通無(wú)阻

協(xié)同辦公 資源管理

超大郵件 超級(jí)功能

智能反垃圾郵件技術(shù)
易管理 免維護(hù)

微信掃一掃 關(guān)注"天下數(shù)據(jù)"商品一律九折
![]()
搜索"朗玥科技"關(guān)注,了解最新優(yōu)惠

AWS Lambda 函數(shù)可以在 HTTPS url 上調(diào)用。它可以在 GET、POST、PUT 上完成。當(dāng) HTTPS url 被調(diào)用時(shí),AWS Lambda 函數(shù)也可以觸發(fā),使用 get/post 傳遞給 HTTPS 的數(shù)據(jù)可以在 AWS Lambda 內(nèi)部可用,用于插入 DynamoDB 或發(fā)送郵件等.
本章詳細(xì)討論了使用 AWS lambda 和 API Gateway 所涉及的各種流程。
以下是使用 AWS lambda 和 API Gateway 所涉及的流程-
為權(quán)限創(chuàng)建 IAM 角色創(chuàng)建 AWS lambda 函數(shù)創(chuàng)建 API 網(wǎng)關(guān)將 lambda 函數(shù)鏈接到 api 網(wǎng)關(guān)向api網(wǎng)關(guān)傳遞數(shù)據(jù)
此處給出了解釋 API 網(wǎng)關(guān)和 AWS Lambda 工作的基本圖表-

本章將詳細(xì)解釋這些過(guò)程并附上相關(guān)屏幕截圖。
從如下所示的 Amazon 服務(wù)中,選擇 IAM 以創(chuàng)建要由 Lambda 函數(shù)使用的角色。

轉(zhuǎn)到 IAM 并從左側(cè)部分選擇 角色,如下所示-

為 Lambda 函數(shù)單擊 創(chuàng)建角色。

選擇 Lambda 并點(diǎn)擊底部的 權(quán)限。選擇 API Gateway 和 Lambda 所需的權(quán)限。

在搜索中搜索API網(wǎng)關(guān),它會(huì)列出你所有的相關(guān)權(quán)限。這里我們選擇了 API 網(wǎng)關(guān)的完全訪問(wèn)權(quán)限,如下所示-

現(xiàn)在,搜索 API 網(wǎng)關(guān),它會(huì)列出所有相關(guān)權(quán)限。這里我們選擇了 API 網(wǎng)關(guān)的完全訪問(wèn)權(quán)限,如下所示-

您還必須為政策重復(fù)相同的過(guò)程。

選擇必要的政策后,點(diǎn)擊 查看進(jìn)行下一步。根據(jù)您的選擇輸入角色的名稱,如下所示-

它顯示附加到角色的策略。點(diǎn)擊 創(chuàng)建角色,我們就完成了角色的創(chuàng)建,可以繼續(xù)使用 lambda 函數(shù)了。
轉(zhuǎn)到 AWS services 并單擊 lambda 服務(wù)以創(chuàng)建用于將其與 api 網(wǎng)關(guān)連接的函數(shù)。

Lambda 函數(shù)的 UI 屏幕如下所示。單擊 創(chuàng)建函數(shù)按鈕以繼續(xù)創(chuàng)建 Lambda 函數(shù)。

輸入函數(shù)名稱并選擇我們?cè)谏厦鎰?chuàng)建的現(xiàn)有角色。

它會(huì)閃現(xiàn)一條消息,說(shuō)明名為 lambdawithapigateway 的函數(shù)已成功創(chuàng)建。

請(qǐng)注意,這里我們將使用 nodejs 運(yùn)行時(shí)來(lái)編寫代碼。帶有 helloworld 消息的 AWS 代碼如下所示-

AWS Lambda 代碼存在于 index.js 文件中。稱為處理程序的函數(shù)具有參數(shù),即 events、context 和 callback。
回調(diào)函數(shù)基本都有錯(cuò)誤和成功信息。請(qǐng)注意,這里我們沒(méi)有任何與錯(cuò)誤相關(guān)的代碼,因此傳遞了 null 并且成功消息是 HelloWorld from lambda。
最后,保存添加的更改,讓我們繼續(xù)將 Lambda 函數(shù)添加到 API 網(wǎng)關(guān)。
登錄您的 AWS 賬戶并打開 API Gateway,如下所示-

點(diǎn)擊 API Gateway,它會(huì)引導(dǎo)您進(jìn)入可以創(chuàng)建新 API 網(wǎng)關(guān)的屏幕。

點(diǎn)擊 創(chuàng)建 API 并添加詳細(xì)信息,如下所示-

點(diǎn)擊屏幕右側(cè)的 創(chuàng)建 API 按鈕。這將在屏幕左側(cè)顯示新創(chuàng)建的 API。

點(diǎn)擊 操作下拉菜單為 API 創(chuàng)建新資源。

現(xiàn)在,創(chuàng)建一個(gè)新資源,如下所示-

輸入 資源名稱,如下所示。您將看到在最后創(chuàng)建的 url 中輸入的資源名稱。單擊 創(chuàng)建資源,您將在屏幕上看到它,如下所示-


向創(chuàng)建的資源添加 GET/POST 方法,如下所示。從 操作下拉菜單中選擇方法。

單擊 GET 方法將方法添加到 API。

下一步是將其與 Lambda 函數(shù)集成的集成,F(xiàn)在向其中添加 Lambda 函數(shù),如下所示-

選擇之前創(chuàng)建的 lambda 函數(shù)。

保存更改,您可以看到一個(gè)對(duì)話框要求許可,如下所示-

點(diǎn)擊 確定獲得權(quán)限。這是 API 網(wǎng)關(guān) HTTP 請(qǐng)求和 Lambda 函數(shù)之間的執(zhí)行細(xì)節(jié)-

現(xiàn)在,讓我們部署 API 網(wǎng)關(guān)更改。為此,我們需要從 Actions 下拉列表中選擇 Deploy API,如下所示-

選擇 部署 API。它將詢問(wèn)部署狀態(tài)。從部署階段下拉列表中選擇 New Stage 并將階段名稱添加為 Production。

點(diǎn)擊 部署按鈕,它會(huì)將您重定向到如下所示的網(wǎng)址-

從左側(cè)選擇 GET 方法以獲取 url。在新選項(xiàng)卡中打開 url 以查看來(lái)自 Lambda 函數(shù)的消息。

這是使用 AWS Lambda 和 AWS API Gateway 的基本示例。在上面的例子中,我們?cè)?Lambda 函數(shù)中對(duì)消息進(jìn)行了硬編碼。
現(xiàn)在,讓我們從 API 網(wǎng)關(guān)獲取消息詳細(xì)信息。如果必須從不同的域調(diào)用 HTTPS 調(diào)用,例如對(duì) API 的 AJAX 調(diào)用,我們需要為創(chuàng)建的 API 網(wǎng)關(guān)啟用 CORS。
選擇為 API 創(chuàng)建的資源,然后點(diǎn)擊 Actions 下拉菜單-

現(xiàn)在, 啟用 CORS 將打開以下屏幕-

您可以使用幾種方法來(lái)啟用 CORS。 Access-Control-Allow-Origin 被標(biāo)記為 * 這意味著它允許從任何域的 API 網(wǎng)關(guān)獲取內(nèi)容。
您還可以指定要與 API 一起使用的域名。單擊 啟用 CORS 并替換現(xiàn)有的 CORS 標(biāo)頭按鈕,它將顯示如下所示的確認(rèn)消息-

單擊 是,替換現(xiàn)有值按鈕以啟用它。 啟用 CORS 屏幕如下所示-

打開在 API Gateway displayhelloworld 中創(chuàng)建的 API,如下圖所示-

點(diǎn)擊 集成請(qǐng)求發(fā)送數(shù)據(jù)如下所示-

選擇 Body Mapping Templates 并將此示例的 Content-Type 添加為 application/json。單擊添加的內(nèi)容類型添加詳細(xì)信息如下-

現(xiàn)在,添加 JSON 格式的模板,如下所示-

觀察到我們已經(jīng)將消息作為參數(shù)從 API Gateway 獲取數(shù)據(jù)并與 AWS Lambda 共享。獲取詳細(xì)信息的語(yǔ)法如上所示。
現(xiàn)在,部署 API 以使更改在API 網(wǎng)關(guān) URL。為此,我們需要更改 Lambda 函數(shù)以根據(jù) API 網(wǎng)關(guān) URL 顯示數(shù)據(jù)。 Lambda 函數(shù)的代碼如下所示。請(qǐng)注意,我們正在從事件中獲取消息并傳遞給回調(diào)。
exports.handler = (event, context, callback) => {
let message = event.message;
callback(null, message);
};
現(xiàn)在,在 Lambda 中保存更改并點(diǎn)擊 URL 以查看更改。觀察下面給出的屏幕截圖-

點(diǎn)擊如下所示的 URL-
https://rw2ek1xung.execute-api.us-east- 1.amazonaws.com/prod/hello?message=hello%20from%20api%20gateway
請(qǐng)注意,這里我們將消息作為查詢字符串傳遞給 GET url。然后你可以觀察到如下所示的輸出-

它從 URL 讀取發(fā)送到消息的詳細(xì)信息,并在瀏覽器中顯示相同的內(nèi)容。
作為AWS頂級(jí)代理商,選擇天.下.數(shù).據(jù)的優(yōu)勢(shì)
1、專屬客服協(xié)助注冊(cè)AWS,或提供注冊(cè)好的賬號(hào)直接使用
2、支持收U等多幣種支付代付,無(wú)額外服務(wù)費(fèi)用
3、AWS多種產(chǎn)品類型,更高產(chǎn)品租賃權(quán)限
4、針對(duì)大客戶,AWS專屬折扣優(yōu)惠
5、7x24小時(shí)專屬客服,在線解答各種疑問(wèn)
詳詢電話40 0-63 8-88 08 官網(wǎng):http://m.51huadong.com/2023/aws.asp
產(chǎn)品與服務(wù)
香港服務(wù)器 香港高防服務(wù)器 美國(guó)服務(wù)器 韓國(guó)服務(wù)器 新加坡服務(wù)器 日本服務(wù)器 臺(tái)灣服務(wù)器云服務(wù)器
香港云主機(jī) 美國(guó)云主機(jī) 韓國(guó)云主機(jī) 新加坡云主機(jī) 臺(tái)灣云主機(jī) 日本云主機(jī) 德國(guó)云主機(jī) 全球云主機(jī)高防專線
海外高防IP 海外無(wú)限防御 SSL證書 高防CDN套餐 全球節(jié)點(diǎn)定制 全球?qū)>GPLC關(guān)于我們
關(guān)于天下數(shù)據(jù) 數(shù)據(jù)招商加盟 天下數(shù)據(jù)合作伙伴 天下數(shù)據(jù)團(tuán)隊(duì)建設(shè) 加入天下數(shù)據(jù) 媒體報(bào)道 榮譽(yù)資質(zhì) 付款方式關(guān)注我們
微信公眾賬號(hào)
新浪微博
天下數(shù)據(jù)手機(jī)站 關(guān)于天下數(shù)據(jù) 聯(lián)系我們 誠(chéng)聘英才 付款方式 幫助中心 網(wǎng)站備案 解決方案 域名注冊(cè) 網(wǎng)站地圖
天下數(shù)據(jù)18年專注海外香港服務(wù)器、美國(guó)服務(wù)器、海外云主機(jī)、海外vps主機(jī)租用托管以及服務(wù)器解決方案-做天下最好的IDC服務(wù)商
《中華人民共和國(guó)增值電信業(yè)務(wù)經(jīng)營(yíng)許可證》 ISP證:粵ICP備07026347號(hào)
朗信天下發(fā)展有限公司(控股)深圳市朗玥科技有限公司(運(yùn)營(yíng))聯(lián)合版權(quán)
深圳總部:中國(guó).深圳市南山區(qū)深圳國(guó)際創(chuàng)新谷6棟B座10層 香港總部:香港上環(huán)蘇杭街49-51號(hào)建安商業(yè)大廈7樓
7×24小時(shí)服務(wù)熱線:4006388808香港服務(wù)電話:+852 67031102
本網(wǎng)站的域名注冊(cè)業(yè)務(wù)代理北京新網(wǎng)數(shù)碼信息技術(shù)有限公司的產(chǎn)品