
云原生 API 網關 APISIX 入門教程
AWS Gateway 是一款功能強大的工具,可用于構建可擴展的 API,以滿足現代 Web 和移動應用程序的需求。借助 AWS Gateway,您可以創建 RESTful API,向開發人員公開您的數據和業務邏輯,然后開發人員可以構建使用您的 API 的豐富交互式應用程序。
REST API 是構建可擴展分布式 Web 應用程序的行業標準。借助 AWS Gateway,您可以輕松構建支持GET
和POST
方法以及復雜查詢參數的 REST API。您還可以添加對其他 HTTP 方法(例如PUT
、DELETE
和HEAD
)的支持。
使用 AWS Gateway,您可以快速創建安全且強大的 API。您還可以使用它以最少的努力將代碼部署到生產環境。此外,AWS Gateway 允許與其他 AWS 服務(例如 S3 和 DynamoDB)無縫集成,使您能夠輕松地向 API 添加復雜的功能。
在使用 AWS Gateway 構建 RESTful API 之前,您應該做好以下準備:
let user = {
firstName: "John",
lastName: "Smith",
location: "Bay Area"
}
export const handler = async(event) => {
// TODO implement
console.log(">>>> Inside Lambda Function....");
if(event.httpMethod === "GET")
{
getUserRecord(event);
}
if(event.httpMethod === "POST")
{
createUserRecord(event)
}
const response = {
statusCode: 200,
body: JSON.stringify({
user_details: user
})
};
return response;
};
function getUserRecord (event) {
const response = {
statuscode: 200,
body: JSON.stringify({
user_details: user
})
};
return response;
}
function createUserRecord(event) {
const body = JSON.parse(event.body);
const response = {
statusCode: 200,
body:JSON.stringify({
message: "successfully created",
details: body
})
};
return response;
}
代碼首先創建一個名為的對象user
,該對象包含一些屬性,如firstName
、lastName
和location
。
然后處理程序函數檢查事件對象的 httpMethod 屬性,如果是“GET”,則調用該getUserRecord
函數,如果是“POST”,則調用該createUserRecord
函數。
getUserRecord
和函數都createUserRecord
將event
對象作為輸入并返回該response
對象。
在getUserRecord
函數中,它創建一個response
具有statusCode
of200
和 body 的對象,該對象包含一個 JSON 對象,user_details
該對象的屬性是開始時創建的用戶對象。
在createUserRecord
函數中,它首先將event.body
字符串解析為 JSON 對象,然后創建一個具有 statusCode 的響應對象以及包含具有和屬性的200
JSON 對象的主體。message
details
通過單擊“操作”并選擇“部署 API”來部署 API。
選擇部署階段(例如“prod”或“test”)并點擊“Deploy”。使用生成的 API 端點向您的 API 發出請求。
現在,我們的 API 已啟動并運行。您可以通過 Postman 發送測試 HTTP 請求。通過向您的 發送請求invoke URL
,您應該會看到200 OK
狀態代碼。對于此測試,傳入請求不需要請求正文。
這樣,我們就使用 AWS Lambda 創建了一個簡單的 RESTful API。然后可以根據需要擴展此代碼,以構建應用程序的 API。接下來,您可能希望使用 API 密鑰保護 API,將 API 與 API 網關集成,查看您的API 正在被消費和使用或通過以下方式增加收入API 貨幣化? 為了滿足您的 API 分析和貨幣化需求,查看 Moesif今天來探索這一切以及更多!
原文地址:https://www.moesif.com/blog/technical/api-development/Building-Rest-API-With-AWS-Gateway-And-Node/