คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X ข้อมูล
เวอร์ชัน: 1.0.0
เรียกใช้ฟังก์ชันที่ทำให้ใช้งานได้บน AWS Lambda ใช้ส่วนขยายนี้เพื่อแสดงรายการฟังก์ชันที่ใช้ได้ในบัญชี AWS ของคุณ จากนั้นเรียกใช้ฟังก์ชันที่ต้องการ
ข้อกำหนดเบื้องต้น
ก่อนที่จะใช้ส่วนขยายจากพร็อกซี API โดยใช้นโยบาย Extension), คุณต้องทำดังนี้
รับรหัสคีย์การเข้าถึงและคีย์การเข้าถึงข้อมูลลับของ Amazon
คุณจะต้องใช้ข้อมูลเหล่านี้พร้อมกับชื่อภูมิภาคที่มีการทำให้ฟังก์ชันใช้งานได้เพื่อconfigureส่วนขยายนี้
ทำให้ฟังก์ชัน Lambda ใช้งานได้ ส่วนขยายต้องมีคุณสมบัติอย่างใดอย่างหนึ่งต่อไปนี้จึงจะมีสิทธิ์เข้าถึงฟังก์ชัน Lambda ได้
- ทำให้ใช้งานได้ใน VPC สาธารณะ
- ทำให้ใช้งานได้ใน VPC ส่วนตัวที่มีเกตเวย์ NAT สาธารณะ
ดูข้อมูลเพิ่มเติมในการกำหนดค่าฟังก์ชัน Lambda เพื่อเข้าถึงทรัพยากรใน Amazon VPC
เกี่ยวกับ AWS Lambda
AWS Lambda มีสภาพแวดล้อมการประมวลผลที่คุณเรียกใช้ฟังก์ชันในภาษาที่รองรับได้
การดำเนินการ
เรียกใช้
เรียกใช้ฟังก์ชันใน AWS Lambda
โปรดดูรายละเอียดเพิ่มเติมเกี่ยวกับพารามิเตอร์ในเอกสารประกอบ AWS Lambda Invoke
ไวยากรณ์
<Action>invoke</Action>
<Input><![CDATA[
{
"functionName" : "function-on-lambda",
"invocationType" : "RequestResponse | Event | DryRun",
"logType" : "None | Tail",
"qualifier" : "Version-or-alias",
"payload" : "Escaped-JSON-string"
}
]]>
</Input>
<Output>flow-variable</Output>
ตัวอย่าง
<Action>invoke</Action>
<Input><![CDATA[
{
"functionName" : "helloWorld",
"invocationType" : "RequestResponse",
"logType" : "None",
"qualifier" : "$LATEST",
"payload" : "{ \"key\": \"val\" }"
}
]]>
</Input>
<Output>function.response.value</Output>
พารามิเตอร์คำขอ
โปรดดูรายละเอียดเพิ่มเติมเกี่ยวกับพารามิเตอร์ในเอกสารประกอบ AWS Lambda Invoke
พารามิเตอร์ | คำอธิบาย | Type | ค่าเริ่มต้น | จำเป็น |
---|---|---|---|---|
functionName | ชื่อของฟังก์ชันที่จะเรียกใช้ | สตริง | ไม่มี | ใช่ |
invocationType | ระบุว่าจะเรียกใช้ฟังก์ชันแบบซิงโครนัส อะซิงโครนัส หรือตรวจสอบค่าพารามิเตอร์ | สตริง | ไม่มี | ไม่มี |
logType | (ไม่บังคับ) ระบุว่าจะส่งคืนข้อมูลบันทึก 4 KB สุดท้ายหรือไม่ | สตริง | ไม่มี | ไม่มี |
ตัวระบุ | เวอร์ชันของชื่อแทนของฟังก์ชัน Lambda ที่เผยแพร่ | สตริง | ไม่มี | ไม่มี |
payload | JSON เป็นอินพุตสำหรับฟังก์ชัน Lambda | สตริง | ไม่มี | ไม่มี |
คำตอบ
อาร์เรย์ของฟังก์ชันที่มีรายละเอียดเฉพาะเวอร์ชัน ตัวอย่างมีดังนี้
{
"StatusCode" : 200,
"Payload" : "{\"statusCode\":200,\"body\":\"\\\"Hello World!\\\"\"}"
}
พร็อพเพอร์ตี้การตอบกลับ
พร็อพเพอร์ตี้ | คำอธิบาย | Type | ค่าเริ่มต้น |
---|---|---|---|
StatusCode | รหัสสถานะ HTTP | จำนวนเต็ม | ไม่มี |
เพย์โหลด | JSON ที่แทนออบเจ็กต์ที่ฟังก์ชันแสดงผล แสดงก็ต่อเมื่อประเภทการเรียกใช้เป็น RequestResponse สำหรับข้อผิดพลาดของฟังก์ชัน ข้อความนี้มีข้อความคำอธิบายข้อผิดพลาด | สตริง | ไม่มี |
listFunctions
แสดงรายการฟังก์ชัน AWS Lambda ที่ใช้ได้
โปรดดูรายละเอียดเพิ่มเติมเกี่ยวกับพารามิเตอร์ในเอกสารประกอบ AWS Lambda ListFunctions
ไวยากรณ์
<Action>listFunctions</Action>
<Input><![CDATA[
{
"masterRegion" : "ALL | [a-z]{2}(-gov)?-[a-z]+-\d{1}",
"functionVersion" : "ALL",
"maxItems" : 1 - 10000
}
]]>
</Input>
<Output>flow-variable</Output>
ตัวอย่าง
<Action>listFunctions</Action>
<Input><![CDATA[
{
"masterRegion" : "ALL",
"functionVersion" : "ALL",
"maxItems" : 50
}
]]>
</Input>
<Output>function.list</Output>
พารามิเตอร์คำขอ
โปรดดูรายละเอียดเพิ่มเติมเกี่ยวกับพารามิเตอร์ในเอกสารประกอบ AWS Lambda ListFunctions
พารามิเตอร์ | คำอธิบาย | Type | ค่าเริ่มต้น | จำเป็น |
---|---|---|---|---|
masterRegion | ภูมิภาค (เช่น us-east-2 ) ที่ควรระบุฟังก์ชัน ALL เพื่อรวมฟังก์ชันจากภูมิภาคใดก็ได้ หากระบุไว้ คุณต้องระบุ functionVersion ด้วย |
สตริง | ไม่มี | ไม่มี |
functionVersion | ระบุ ALL เพื่อแสดงเวอร์ชันที่เผยแพร่ทั้งหมด หากไม่ระบุไว้ ระบบจะแสดงผลเฉพาะ ARN เวอร์ชันที่ไม่ได้เผยแพร่ล่าสุด |
สตริง | ไม่มี | ไม่มี |
maxItems | จำนวนฟังก์ชันสูงสุดที่จะแสดงผลในการตอบสนอง ต้องมากกว่า 0 ค่าสูงสุดสัมบูรณ์ที่ระบบแสดงผลได้คือ 50 | จำนวนเต็ม | ไม่มี | ไม่มี |
คำตอบ
JSON ที่แสดงอาร์เรย์ของฟังก์ชันที่มีรายละเอียดของเวอร์ชันที่เฉพาะเจาะจง
[
{
"FunctionName": "helloWorld",
"FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
"Runtime": "nodejs",
"Role": "arn:aws:iam::012345:role/service-role/fakeRole",
"Handler": "index.handler",
"Description": "A Hello World lambda function.",
"Version": "$LATEST"
},
{
"FunctionName": "helloWorld",
"FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
"Runtime": "nodejs",
"Role": "arn:aws:iam::012345:role/service-role/fakeRole",
"Handler": "index.handler",
"Description": "A Hello World lambda function.",
"Version": "1"
}
]
พร็อพเพอร์ตี้การตอบกลับ
พร็อพเพอร์ตี้ | คำอธิบาย | Type | ค่าเริ่มต้น |
---|---|---|---|
คำอธิบาย | คำอธิบายของฟังก์ชัน | สตริง | ไม่มี |
ตัวจัดการ | ฟังก์ชันที่ Lambda เรียกเพื่อเริ่มเรียกใช้ฟังก์ชันดังกล่าว | สตริง | ไม่มี |
FunctionArn | ชื่อทรัพยากร Amazon ของฟังก์ชัน | สตริง | ไม่มี |
FunctionName | ชื่อของฟังก์ชัน | สตริง | ไม่มี |
บทบาท | บทบาทการดำเนินการของฟังก์ชัน | สตริง | ไม่มี |
รันไทม์ | สภาพแวดล้อมรันไทม์ของฟังก์ชัน | สตริง | ไม่มี |
เวอร์ชัน | เวอร์ชันของฟังก์ชัน | สตริง | ไม่มี |
ข้อมูลอ้างอิงการกำหนดค่า
ใช้ข้อมูลต่อไปนี้เมื่อคุณกำหนดค่าและทำให้ส่วนขยายนี้ใช้งานได้ เพื่อใช้ในพร็อกซี API โปรดดูขั้นตอนการกำหนดค่าส่วนขยายโดยใช้คอนโซล Apigee ในการเพิ่มและการกำหนดค่าส่วนขยาย
คุณสมบัติส่วนขยายที่พบบ่อย
พร็อพเพอร์ตี้ต่อไปนี้มีอยู่ในส่วนขยายทุกรายการ
พร็อพเพอร์ตี้ | คำอธิบาย | ค่าเริ่มต้น | ต้องระบุ |
---|---|---|---|
name |
ชื่อที่คุณกําหนดให้การกําหนดค่านี้ของส่วนขยาย | ไม่มี | ได้ |
packageName |
ชื่อแพ็กเกจส่วนขยายที่ระบุโดย Apigee Edge | ไม่มี | ได้ |
version |
หมายเลขเวอร์ชันของแพ็กเกจส่วนขยายที่คุณกําหนดค่าส่วนขยาย | ไม่มี | ได้ |
configuration |
ค่าการกําหนดค่าเฉพาะสําหรับส่วนขยายที่คุณกําลังเพิ่ม ดูพร็อพเพอร์ตี้สําหรับแพ็กเกจส่วนขยายนี้ | ไม่มี | ได้ |
พร็อพเพอร์ตี้สำหรับแพ็กเกจส่วนขยายนี้
ระบุค่าสำหรับพร็อพเพอร์ตี้การกำหนดค่าต่อไปนี้ที่เจาะจงสำหรับส่วนขยายนี้
พร็อพเพอร์ตี้ | คำอธิบาย | ค่าเริ่มต้น | จำเป็น |
---|---|---|---|
ภูมิภาค AWS ของ Lambda | ชื่อของภูมิภาคที่มีการทำให้ฟังก์ชันใช้งานได้ เช่น us-east-1 |
ไม่มี | ใช่ |
ข้อมูลเข้าสู่ระบบ | เมื่อป้อนในคอนโซล Apigee Edge ไฟล์นี้เป็นไฟล์ JSON ที่มีรหัสคีย์การเข้าถึงและคีย์การเข้าถึง Amazon ของคุณในรูปแบบต่อไปนี้{ "accessKeyId" : "access-key-ID", "secretAccessKey" : "secret-access-key" } เมื่อส่งผ่าน Management API ค่าจะเป็นค่าที่เข้ารหัส base64 ซึ่งสร้างขึ้นจากไฟล์ JSON ของคีย์ดังกล่าว |
ไม่มี | ใช่ |