ভূমিকা
প্লেস ফটো (নতুন) পরিষেবা হল একটি রিড-অনলি API যা আপনাকে নিজের অ্যাপ্লিকেশনে খুব ভালো কোয়ালিটির ফটো কন্টেন্ট যোগ করতে দেয়। প্লেস ফটো (নতুন) আপনাকে প্লেস ডেটাবেসে স্টোর করা লক্ষ লক্ষ ফটো অ্যাক্সেস করার সুবিধা দেয়।
আপনি যখন 'জায়গার বিবরণ (নতুন)', 'আশেপাশের সার্চ (নতুন)' বা 'টেক্সট সার্চ (নতুন)' অনুরোধ ব্যবহার করে জায়গার তথ্য পান, তখন আপনি প্রাসঙ্গিক ফটোগ্রাফিক কন্টেন্টের জন্য ফটো রিসোর্সের অনুরোধও করতে পারেন। তারপর, 'প্লেস ফটো (নতুন)' ব্যবহার করে, আপনি রেফারেন্স করা ফটো অ্যাক্সেস করতে এবং আপনার অ্যাপ্লিকেশনের জন্য অপ্টিমাল সাইজে ছবিটির সাইজ পরিবর্তন করতে পারবেন।
APIs Explorer আপনাকে লাইভ অনুরোধ করতে দেয় যাতে আপনি API এবং API বিকল্পগুলির সাথে পরিচিত হতে পারেন:
Place Photos (নতুন) অনুরোধ
কোনও জায়গার ফটো (নতুন) অনুরোধ হল HTTP GET অনুরোধ যা এই ফর্মের URL-এ পাঠানো হয়:https://places.googleapis.com/v1/NAME/media?key=API_KEY&PARAMETERS
যেখানে নিম্নলিখিত প্যারামিটারগুলি প্রয়োজন:
- NAME-এ ফটোর রিসোর্স নাম থাকে।
- API_KEY-এ API key আছে।
- PARAMETERS-এ হয়
maxHeightPxপ্যারামিটার,maxWidthPxপ্যারামিটার অথবা দুটিই আছে।
প্রয়োজনীয় ও ঐচ্ছিক প্যারামিটারের সম্পূর্ণ তালিকা নিচে বর্ণনা করা হয়েছে।
প্রয়োজনীয় প্যারামিটার
ফটো নাম
একটি স্ট্রিং শনাক্তকারী যা অনন্যভাবে একটি ফটো শনাক্ত করে। ফটো নামগুলি জায়গার বিবরণ (নতুন),
আশেপাশের সার্চ (নতুন) বা টেক্সট সার্চ (নতুন)
অনুরোধ থেকে রিটার্ন করা হয় যা name প্রপার্টির মধ্যে থাকে এবং এটি
photos[] অ্যারের প্রতিটি এলিমেন্টের মধ্যে থাকে।
যেমন, ফটো নাম পান দেখুন।
maxHeightPx এবং maxWidthPx
ছবির সর্বাধিক দৈর্ঘ্য ও প্রস্থ পিক্সেলে উল্লেখ করে। ছবির সাইজ নির্দিষ্ট করা ভ্যালুর চেয়ে ছোট হলে, আসল ছবি ফিরিয়ে দেওয়া হবে। ছবিটি যদি কোনও ডাইমেনশনে বড় হয়, তাহলে দুটি ডাইমেনশনের মধ্যে যেটি ছোট, সেটির সাথে ম্যাচ করানোর জন্য এটিকে স্কেল করা হবে। তবে, এটি আসল অ্যাস্পেক্ট রেশিওতে সীমাবদ্ধ থাকবে। maxheight ও maxwidth প্রপার্টি, দু'টিই ১ থেকে ৪৮০০-এর মধ্যে পূর্ণসংখ্যা গ্রহণ করে।
আপনাকে অবশ্যই maxHeightPx অথবা maxWidthPx অথবা দুটিই উল্লেখ করতে হবে।
ঐচ্ছিক প্যারামিটার
skipHttpRedirect
false (ডিফল্ট) হলে, ছবি ফেরত দিতে, ছবিতে HTTP রিডাইরেক্ট করুন।
true হলে, রিডাইরেক্ট এড়িয়ে যান এবং ছবির বিবরণ সহ JSON উত্তর দিন।
যেমন:
{ "name": "places/ChIJj61dQgK6j4AR4GeTYWZsKWw/photos/Aaw_FcKly0DEv3EWmDJyHiEqXIP5mowOc99lN1GzBun6KHH52AZ5fFA/media", "photoUri": "https://lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo" }
HTTP নয় এমন অনুরোধের জন্য এই বিকল্প উপেক্ষা করা হয়।
ফটো নাম পাওয়া
প্লেস ফটো (নতুন)-এর সব অনুরোধে অবশ্যই একটি ফটো রিসোর্স
নাম থাকতে হবে, যা Nearby Search (নতুন),
Text Search (নতুন) বা Place Details (নতুন) অনুরোধের উত্তরে ফেরত দেওয়া হয়। এইসব অনুরোধের উত্তরে
photos[] অ্যারে থাকে যদি
সেই জায়গায় সম্পর্কিত ফটোগ্রাফিক কন্টেন্ট থাকে।
photo[]-এর প্রতিটি এলিমেন্টে নিম্নলিখিত ফিল্ড থাকে:
name— আপনি ফটো অনুরোধ করলে, ফটো রিসোর্সের নাম সহ স্ট্রিং। এই স্ট্রিংটি এই ফর্ম্যাটে আছে:places/PLACE_ID/photos/PHOTO_RESOURCE
heightPx— পিক্সেলে ছবির সর্বাধিক দৈর্ঘ্য।widthPx— পিক্সেলের হিসেবে ছবির সর্বাধিক প্রস্থ।authorAttributions[]— প্রয়োজনীয় অ্যাট্রিবিউশন। এই ফিল্ড সবসময় থাকে, তবে খালি থাকতে পারে।
Place Photos (New) থেকে পাওয়া ফটোগুলি বিভিন্ন লোকেশন থেকে সোর্স করা হয়,
যার মধ্যে ব্যবসার মালিক এবং ব্যবহারকারীর কন্ট্রিবিউট করা ফটো অন্তর্ভুক্ত। বেশিরভাগ ক্ষেত্রে, এইসব
ফটো অ্যাট্রিবিউশন ছাড়াই ব্যবহার করা যেতে পারে অথবা ছবিতে
প্রয়োজনীয় অ্যাট্রিবিউশন অন্তর্ভুক্ত করা থাকবে। তবে, ফেরত আসা photo এলিমেন্টে
authorAttributions ফিল্ডে কোনও ভ্যালু থাকলে, আপনি যেখানেই ছবি দেখাবেন সেখানে আপনার অ্যাপ্লিকেশনে
অতিরিক্ত অ্যাট্রিবিউশন অন্তর্ভুক্ত করতে হবে।
নিচের উদাহরণে একটি 'জায়গার বিবরণ (নতুন)' সংক্রান্ত অনুরোধ দেখানো হয়েছে, যার মধ্যে ফিল্ড মাস্কে photos অন্তর্ভুক্ত রয়েছে, যাতে উত্তরের মধ্যে photos[] অ্যারে অন্তর্ভুক্ত থাকে:
curl -X GET \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: id,displayName,photos" \ https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E
photos[] অ্যারের একটি উদাহরণ নিচে দেখানো হল।
... "photos" : [ { "name": "places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1", "widthPx": 6000, "heightPx": 4000, "authorAttributions": [ { "displayName": "John Smith", "uri": "//maps.google.com/maps/contrib/101563", "photoUri": "//lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo" } ] }, ...
কোনও জায়গার ফটোর অনুরোধ করা
নিচে দেওয়া অনুরোধের উদাহরণটি রিসোর্স name ব্যবহার করে একটি ছবি রিটার্ন করে, সেটির সাইজ পরিবর্তন করে
এমনভাবে যে সেটি সর্বাধিক ৪০০ পিক্সেল লম্বা ও চওড়া হয়:
https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/ATKogpeivkIjQ1FT7QmbeT33nBSwqLhdPvIWHfrG1WfmgrFjeZYpS_Ls7c7rj8jejN9QGzlx4GoAH0atSvUzATDrgrZic_tTEJdeITdWL-oG3TWi5HqZoLozrjTaxoAIxmROHfV5KXVcLeTdCC6kmZExSy0CLVIG3lAPIgmvUiewNf-ZHYE4-jXYwPQpWHJgqVosvZJ6KWEgowEA-qRAzNTu9VH6BPFqHakGQ7EqBAeYOiU8Dh-xIQC8FcBJiTi0xB4tr-MYXUaF0p_AqzAhJcDE6FAgLqG1s7EsME0o36w2nDRHA-IuoISBC3SIahINE3Xwq2FzEZE6TpNTFVfgTpdPhV8CGLeqrauHn2I6ePm-2hA8-87aO7aClXKJJVzlQ1dc_JuHz6Ks07d2gglw-ZQ3ibCTF5lMtCF9O-9JHyRQXsfuXw/media?maxHeightPx=400&maxWidthPx=400&key=API_KEY
সফল Place Photos (New) অনুরোধের উত্তর হল একটি ছবি।
সমস্যার কোড
Place Photos (নতুন) অনুরোধের ক্ষেত্রে নিম্নলিখিত সমস্যার কোড দেখানো হতে পারে।
কোটা ছাড়িয়ে গেছে (403)
আপনার অনুরোধ উপলভ্য কোটা অতিক্রম করলে, সার্ভার একটি HTTP 403 স্ট্যাটাস রিটার্ন করে এবং কোটা যে অতিক্রম করেছে তা বোঝাতে নিম্নলিখিত ছবিটি দেখায়:
অনুরোধটি সঠিক নয় (404)
সার্ভার আপনার অনুরোধ বুঝতে না পারলে, এটি HTTP 400 স্ট্যাটাস ফেরত পাঠায়, যা ভুল অনুরোধকে নির্দেশ করে। অনুরোধ ভুল হওয়ার সবচেয়ে সাধারণ কারণগুলি হল:
- জমা দেওয়া ছবির নাম সঠিকভাবে উল্লেখ করা হয়নি।
- অনুরোধে
maxHeightPxঅথবাmaxWidthPxপ্যারামিটার অন্তর্ভুক্ত করা হয়নি। maxHeightPxবাmaxWidthtPxপ্যারামিটারের ভ্যালুnullহিসেবে সেট করা হয়েছে।name-এর মেয়াদ শেষ হয়ে গেছে।name-এর মেয়াদ শেষ হয়ে গেলে, নতুনnameপেতে স্থান সম্পর্কিত বিবরণ (নতুন), আশেপাশের সার্চ (নতুন) অথবা টেক্সট সার্চ (নতুন) -এ অনুরোধ করুন।
অনেক বেশি অনুরোধ (429)
Google, প্রয়োজন অনুযায়ী ফটো লোড করার সাজেশন দেয়। আপনি যদি কোনও জায়গার সব ছবি একবার দেখানোর চেষ্টা করেন, তাহলে সার্ভার HTTP 429 স্ট্যাটাস কোড দেখাতে পারে, এর অর্থ হল একই সময়ে অনেক ছবি লোড করা হচ্ছে। আপনি এই সমস্যার মেসেজ পেলে, সহায়তা টিমের সাথে যোগাযোগ করুন এবং কোটা বাড়ানোর অনুরোধ করুন।
এটি ব্যবহার করে দেখুন!
API এক্সপ্লোরার আপনাকে নমুনা অনুরোধ করতে দেয় যাতে আপনি API ও API বিকল্পগুলির সাথে পরিচিত হতে পারেন।
অনুরোধ করতে:
- পৃষ্ঠার ডানদিকে API আইকন বেছে নিন।
nameপ্যারামিটার এখানে সেট করুন:places/PLACE_ID/photos/PHOTO_RESOURCE/mediaskipHttpRedirect-কেtrueহিসেবে সেট করুন যাতে অনুরোধের উত্তরে JSON রেসপন্স পাওয়া যায়। সাধারণত, অনুরোধের উত্তরে এমন ছবি পাঠানো হয় যা API Explorer-এ দেখানো যায় না।- এক্সিকিউট করুন বোতাম বেছে নিন। ডায়ালগে, অনুরোধ করার জন্য আপনি যে অ্যাকাউন্ট ব্যবহার করতে চান সেটি বেছে নিন।
-
API Explorer প্যানেলে, API Explorer উইন্ডো বড় করতে, 'ফুলস্ক্রিন' আইকন বেছে নিন।