JavaScript Consumer SDK सेट अप करना

प्लैटफ़ॉर्म चुनें: Android iOS JavaScript

JavaScript Consumer SDK की मदद से, आपका कंज्यूमर ऐप्लिकेशन, वेब पर आधारित मैप पर Fleet Engine में ट्रैक की गई गाड़ियों की जगह और दिलचस्पी की अन्य जगहों की जानकारी दिखा सकता है. इससे आपके कंज्यूमर, ड्राइवर के सफ़र की प्रोग्रेस देख सकते हैं. इस गाइड में यह मान लिया गया है कि आपने Fleet Engine को उससे जुड़े Google Cloud प्रोजेक्ट और एपीआई पासकोड के साथ सेट अप कर लिया है. ज़्यादा जानकारी के लिए, Fleet Engine देखें.

JavaScript Consumer SDK को सेट अप करने के लिए, यह तरीका अपनाएं:

  1. Maps JavaScript API चालू करें
  2. अनुमति सेट अप करें

Maps JavaScript API चालू करें

Google Cloud Console में Maps JavaScript API चालू करें. ज़्यादा जानकारी के लिए, Google Cloud के दस्तावेज़ में एपीआई चालू करना लेख पढ़ें. इससे JavaScript के लिए Consumer SDK चालू हो जाता है.

अनुमति सेट अप करें

Fleet Engine को कम भरोसे वाले एनवायरमेंट: स्मार्टफ़ोन और ब्राउज़र से एपीआई के तरीके को कॉल करने के लिए, JSON वेब टोकन (JWT) की ज़रूरत होती है.

JWT आपके सर्वर पर जनरेट होता है. इस पर हस्ताक्षर किए जाते हैं, इसे एनक्रिप्ट किया जाता है, और क्लाइंट को भेजा जाता है. यह तब तक सर्वर के साथ होने वाले इंटरैक्शन के लिए मान्य रहता है, जब तक इसकी समयसीमा खत्म नहीं हो जाती या यह अमान्य नहीं हो जाता.

अहम जानकारी

अनुमति कैसे काम करती है?

Fleet Engine के डेटा के साथ अनुमति देने की प्रोसेस में, सर्वर-साइड और क्लाइंट-साइड, दोनों तरह से लागू करने की ज़रूरत होती है.

सर्वर-साइड अनुमति

वेब पर आधारित ऐप्लिकेशन में पुष्टि और अनुमति सेट अप करने से पहले, आपके बैकएंड सर्वर के पास, Fleet Engine को ऐक्सेस करने के लिए, वेब पर आधारित ऐप्लिकेशन को JSON वेब टोकन जारी करने की सुविधा होनी चाहिए. आपका वेब पर आधारित ऐप्लिकेशन, इन JWT को अपने अनुरोधों के साथ भेजता है. इससे Fleet Engine, अनुरोधों को पुष्टि किए गए और अनुरोध में मौजूद डेटा को ऐक्सेस करने की अनुमति के तौर पर पहचानता है. सर्वर-साइड JWT को लागू करने के निर्देशों के लिए, JSON वेब टोकन जारी करना लेख पढ़ें. Fleet Engine की ज़रूरी बातें में.

खास तौर पर, यात्रा की प्रोग्रेस शेयर करने के लिए, JavaScript Consumer SDK के लिए इन बातों का ध्यान रखें:

क्लाइंट-साइड अनुमति

JavaScript Consumer SDK का इस्तेमाल करने पर, यह अनुमति टोकन फ़ेचर का इस्तेमाल करके, सर्वर से टोकन का अनुरोध करता है. यह तब होता है, जब इनमें से कोई भी शर्त पूरी होती है:

  • कोई मान्य टोकन मौजूद नहीं है. जैसे, जब एसडीके ने नए पेज लोड होने पर फ़ेचर को कॉल नहीं किया है या जब फ़ेचर ने टोकन के साथ कोई जवाब नहीं दिया है.

  • टोकन की समयसीमा खत्म हो चुकी है.

  • टोकन की समयसीमा खत्म होने में एक मिनट से भी कम समय बचा है.

इसके अलावा, JavaScript Consumer SDK, पहले से जारी किए गए मान्य टोकन का इस्तेमाल करता है और फ़ेचर को कॉल नहीं करता.

अनुमति टोकन फ़ेचर बनाएं

अनुमति टोकन फ़ेचर बनाने के लिए, इन दिशा-निर्देशों का पालन करें:

  • फ़ेचर को दो फ़ील्ड वाला डेटा स्ट्रक्चर दिखाना होगा. इसे इस तरह Promise में रैप किया जाना चाहिए:

    • token स्ट्रिंग.

    • expiresInSeconds नंबर. टोकन, फ़ेच करने के बाद इतने समय में खत्म हो जाता है. पुष्टि करने वाले टोकन फ़ेचर को, फ़ेच करने के समय से लेकर लाइब्रेरी तक, समयसीमा खत्म होने का समय सेकंड में पास करना होगा. जैसा कि उदाहरण में दिखाया गया है.

  • टोकन पाने के लिए, फ़ेचर को आपके सर्वर पर मौजूद किसी यूआरएल को कॉल करना चाहिए. यह यूआरएल--SERVER_TOKEN_URL--आपके बैकएंड के लागू करने के तरीके पर निर्भर करता है. यहां दिया गया यूआरएल, GitHub पर मौजूद सैंपल ऐप्लिकेशन के बैकएंड के लिए है:

    • https://SERVER_URL/token/consumer/TRIPID

उदाहरण -- पुष्टि करने वाला टोकन फ़ेचर बनाना

यहां दिए गए उदाहरणों में, अनुमति टोकन फ़ेचर बनाने का तरीका बताया गया है:

JavaScript

async function authTokenFetcher(options) {
  // options is a record containing two keys called
  // serviceType and context. The developer should
  // generate the correct SERVER_TOKEN_URL and request
  // based on the values of these fields.
  const response = await fetch(SERVER_TOKEN_URL);
  if (!response.ok) {
    throw new Error(response.statusText);
  }
  const data = await response.json();
  return {
    token: data.Token,
    expiresInSeconds: data.ExpiresInSeconds
  };
}

TypeScript

function authTokenFetcher(options: {
  serviceType: google.maps.journeySharing.FleetEngineServiceType,
  context: google.maps.journeySharing.AuthTokenContext,
}): Promise<google.maps.journeySharing.AuthToken> {
  // The developer should generate the correct
  // SERVER_TOKEN_URL based on options.
  const response = await fetch(SERVER_TOKEN_URL);
  if (!response.ok) {
    throw new Error(response.statusText);
  }
  const data = await response.json();
  return {
    token: data.token,
    expiresInSeconds: data.ExpiresInSeconds,
  };
}

आगे क्या करना है

JavaScript में किसी ट्रिप को फ़ॉलो करना