สะท้อน clientMessage
ที่มีการส่งผ่านเข้ามา
วัตถุประสงค์ของวิธีการนี้คือเพื่อทดสอบการเชื่อมต่อพื้นฐานระหว่างผู้รวมการชำระเงินกับ Google
Google อาจเรียกใช้เมธอดนี้หลายครั้งต่อนาทีด้วยพารามิเตอร์ที่ถูกต้องหรือไม่ถูกต้อง เพื่อทดสอบว่ามีการคงข้อจำกัดด้านความปลอดภัยไว้อย่างถูกต้อง Google ยังเรียกใช้วิธีการนี้แบบเฉพาะกิจตามทิศทางของผู้ผสานการทำงานเช่นเดียวกับในทิศทางของ Google อีกด้วย Google จะไม่เรียกใช้รายการนี้เร็วกว่า 1 ครั้งทุกๆ 10 วินาที และไม่เกิน 30 ครั้งในช่วงเวลา 15 นาที
ตัวอย่างการทดสอบข้อจำกัดด้านความปลอดภัยมีดังนี้ (แต่ไม่จำกัดเพียง)
- ทดสอบเพื่อให้แน่ใจว่าปลายทางของผู้ผสานรวมการชำระเงินจะไม่เจรจากับชุดการเข้ารหัสที่อ่อนแอ
- ทดสอบเพื่อให้มั่นใจว่าปลายทางของผู้รวมการชำระเงินไม่มีการเจรจาใดๆ ยกเว้น TLS 1.2
- ทดสอบเพื่อให้แน่ใจว่าปลายทางของผู้รวมการชำระเงินไม่รองรับ HTTP
- ทดสอบเพื่อให้มั่นใจว่าปลายทางของการผสานรวมการชำระเงินมีคีย์การลงนาม PGP ที่รู้จักอย่างน้อย 1 คีย์
- ทดสอบเพื่อให้แน่ใจว่าปลายทางของผู้ผสานรวมการชำระเงินรองรับลายเซ็นคีย์ PGP หลายรายการ ทั้งที่รู้จักและไม่รู้จัก ทั้งที่หมดอายุและใช้งานอยู่
- ทดสอบว่าผู้รวมการชำระเงินรองรับเฉพาะการแยกวิเคราะห์ JSON ที่เข้มงวดเท่านั้น
หากปลายทางพบข้อผิดพลาดขณะประมวลผลคำขอ เนื้อหาการตอบสนองจากปลายทางนี้ควรเป็นประเภท ErrorResponse
คำขอตัวอย่างมีลักษณะดังนี้
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "ZWNobyB0cmFuc2FjdGlvbg",
"requestTimestamp": "1481899949606"
},
"clientMessage": "client message"
}
ตัวอย่างการตอบกลับจะมีลักษณะดังนี้
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"clientMessage": "client message",
"serverMessage": "server message"
}
คำขอ HTTP
POST https://www.integratorhost.example.com/v1/echo
เนื้อหาของคำขอ
เนื้อหาของคำขอมีข้อมูลที่มีโครงสร้างต่อไปนี้
การแสดง JSON |
---|
{
"requestHeader": {
object ( |
ช่อง | |
---|---|
requestHeader |
ต้องระบุ: ส่วนหัวทั่วไปสำหรับคำขอทั้งหมด |
clientMessage |
ต้องระบุ: ข้อความที่จะแสดงซ้ำในคำตอบ |
เนื้อหาการตอบกลับ
ออบเจ็กต์การตอบสนองสำหรับเมธอดเสียงสะท้อน
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
การแสดง JSON |
---|
{
"responseHeader": {
object ( |
ช่อง | |
---|---|
responseHeader |
ต้องระบุ: ส่วนหัวทั่วไปสำหรับคำตอบทั้งหมด |
clientMessage |
ต้องระบุ: ข้อความที่ได้รับในคำขอ |
serverMessage |
ไม่บังคับ: ข้อความของเซิร์ฟเวอร์ โดยไม่ขึ้นอยู่กับ |