Method: echo

পাস করা clientMessage ইকো ব্যাক করে।

এই পদ্ধতির উদ্দেশ্য হল পেমেন্ট ইন্টিগ্রেটর এবং Google এর মধ্যে মৌলিক সংযোগ পরীক্ষা করা।

এই পদ্ধতিটি Google দ্বারা প্রতি মিনিটে একাধিকবার বৈধ বা অবৈধ প্যারামিটার সহ কল ​​করা হতে পারে যাতে নিরাপত্তার সীমাবদ্ধতাগুলি সঠিকভাবে অনুষ্ঠিত হচ্ছে কিনা তা পরীক্ষা করতে। Google এই পদ্ধতিটিকে ইন্টিগ্রেটরের নির্দেশের পাশাপাশি Google-এর নির্দেশে অ্যাড-হক বলে। Google কখনই প্রতি 10 সেকেন্ডে একবারের বেশি দ্রুত কল করবে না এবং 15 মিনিটের উইন্ডোতে 30 বারের বেশি কখনই কল করবে না।

নিরাপত্তা সীমাবদ্ধতা পরীক্ষার উদাহরণ হল (তবে সীমাবদ্ধ নয়):

  • পেমেন্ট ইন্টিগ্রেটরের এন্ডপয়েন্ট দুর্বল সাইফার স্যুটের সাথে আলোচনা করে না তা নিশ্চিত করতে পরীক্ষা করুন।
  • পেমেন্ট ইন্টিগ্রেটরের এন্ডপয়েন্ট TLS 1.2 ব্যতীত অন্য কিছুর সাথে আলোচনা করে না তা নিশ্চিত করার জন্য পরীক্ষা করুন
  • পেমেন্ট ইন্টিগ্রেটরের এন্ডপয়েন্ট HTTP সমর্থন করে না তা নিশ্চিত করতে পরীক্ষা করুন।
  • পেমেন্ট ইন্টিগ্রেটরের এন্ডপয়েন্ট ম্যান্ডেট নিশ্চিত করতে পরীক্ষা করুন অন্তত একটি পরিচিত PGP সাইনিং কী।
  • পেমেন্ট ইন্টিগ্রেটরের এন্ডপয়েন্ট একাধিক 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": string
}
ক্ষেত্র
requestHeader

object ( RequestHeader )

প্রয়োজনীয় : সমস্ত অনুরোধের জন্য সাধারণ শিরোনাম।

clientMessage

string

প্রয়োজনীয় : প্রতিক্রিয়াতে প্রতিধ্বনি করার জন্য বার্তা।

প্রতিক্রিয়া শরীর

ইকো পদ্ধতির জন্য প্রতিক্রিয়া বস্তু।

সফল হলে, প্রতিক্রিয়া বডিতে নিম্নলিখিত কাঠামোর সাথে ডেটা থাকে:

JSON প্রতিনিধিত্ব
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "clientMessage": string,
  "serverMessage": string
}
ক্ষেত্র
responseHeader

object ( ResponseHeader )

প্রয়োজনীয় : সমস্ত প্রতিক্রিয়ার জন্য সাধারণ শিরোনাম।

clientMessage

string

প্রয়োজনীয় : অনুরোধে বার্তা পাওয়া গেছে।

serverMessage

string

ঐচ্ছিক : সার্ভার বার্তা, clientMessage প্রতিধ্বনিত না হওয়া থেকে স্বাধীন।

অনুরোধ শিরোনাম

হেডার অবজেক্ট যা সার্ভারে পাঠানো সমস্ত অনুরোধে সংজ্ঞায়িত করা হয়।

JSON প্রতিনিধিত্ব
{
  "requestId": string,
  "requestTimestamp": string,
  "userLocale": string,
  "protocolVersion": {
    object (Version)
  }
}
ক্ষেত্র
requestId

string

প্রয়োজনীয় : এই অনুরোধের অনন্য শনাক্তকারী।

এটি এমন একটি স্ট্রিং যার সর্বোচ্চ দৈর্ঘ্য 100টি অক্ষর, এবং এতে শুধুমাত্র "az", "AZ", "0-9", ":", "-", এবং "_" অক্ষর রয়েছে।

requestTimestamp

string ( int64 format)

প্রয়োজনীয় : এই অনুরোধের টাইমস্ট্যাম্প যুগের পর থেকে মিলিসেকেন্ড হিসাবে উপস্থাপন করা হয়েছে। প্রাপকের অবশ্যই যাচাই করা উচিত যে এই টাইমস্ট্যাম্পটি 'এখন' এর ± 60s। এই অনুরোধ টাইমস্ট্যাম্প পুনঃপ্রচেষ্টার উপর অদম্য নয়।

userLocale
(deprecated)

string

অপ্রচলিত : একটি দুই- বা তিন-অক্ষরের ISO 639-2 Alpha 3 ভাষা কোড ঐচ্ছিকভাবে একটি হাইফেন এবং একটি ISO 3166-1 Alpha-2 দেশের কোড, যেমন'pt', 'pt-BR', 'fil', অথবা 'fil-PH'। প্রতিক্রিয়ায় userMessage ক্ষেত্রগুলি চালাতে সহায়তা করতে এটি ব্যবহার করুন।

protocolVersion

object ( Version )

প্রয়োজনীয় : এই অনুরোধের সংস্করণ।

সংস্করণ

সংস্করণ অবজেক্ট যা ক্লাসিক abc সংস্করণ কাঠামোর একটি কাঠামোবদ্ধ রূপ। একই সংখ্যার প্রধান সংস্করণগুলি সামঞ্জস্যপূর্ণ হওয়ার গ্যারান্টিযুক্ত। নোট করুন যে গৌণ এবং সংশোধন ঘন ঘন এবং বিজ্ঞপ্তি ছাড়াই পরিবর্তিত হতে পারে। ইন্টিগ্রেটরকে অবশ্যই একই প্রধান সংস্করণের জন্য সমস্ত অনুরোধ সমর্থন করতে হবে।

JSON প্রতিনিধিত্ব
{
  "major": integer,
  "minor": integer,
  "revision": integer
}
ক্ষেত্র
major

integer

প্রয়োজনীয় : প্রধান সংস্করণ। এটি বিভিন্ন সংস্করণের সাথে সামঞ্জস্যের অনুরোধগুলির জন্য চিহ্নিত করা হয়েছে যেগুলি সামঞ্জস্যপূর্ণ হওয়ার নিশ্চয়তা নেই৷

minor

integer

প্রয়োজনীয় : ছোট সংস্করণ। এটি উল্লেখযোগ্য বাগ সংশোধন নির্দেশ করে।

revision

integer

প্রয়োজনীয় : ছোট সংস্করণ। এটি ছোটখাট বাগ ফিক্স বোঝায়।