Place photos আপনাকে আপনার ওয়েব পৃষ্ঠাগুলিতে উচ্চমানের ফটোগ্রাফিক সামগ্রী যোগ করতে দেয়। এই পৃষ্ঠাটি Place ক্লাস (নতুন) এবং PlacesService (লেগেসি) এর মধ্যে স্থানের ফটো বৈশিষ্ট্যগুলির মধ্যে পার্থক্য ব্যাখ্যা করে এবং তুলনার জন্য কিছু কোড স্নিপেট প্রদান করে।
- যদি অনুরোধে
photosক্ষেত্রটি নির্দিষ্ট করা থাকে, তাহলেPlacesService(legacy) যেকোনোgetDetails()অনুরোধের জন্যPlaceResultঅবজেক্টের অংশ হিসেবে সর্বোচ্চ ১০টিPlacePhotoঅবজেক্টের একটি অ্যারে ফেরত পাঠায়।textSearch()এবংnearbySearch()এর ক্ষেত্রে, যদি প্রথম স্থানের ছবি পাওয়া যায়, তাহলে ডিফল্টরূপে ফেরত পাঠানো হয়। - যদি অনুরোধে
photosক্ষেত্রটি নির্দিষ্ট করা থাকে, তাহলেPlaceক্লাসটিfetchFields()অনুরোধের অংশ হিসেবে সর্বোচ্চ ১০টিPhotoঅবজেক্টের একটি অ্যারে প্রদান করে।
নিম্নলিখিত সারণীতে Place ক্লাস এবং PlacesService মধ্যে স্থানের ছবি ব্যবহারের কিছু প্রধান পার্থক্য তালিকাভুক্ত করা হয়েছে:
PlacesService (লিগ্যাসি) | Place (নতুন) |
|---|---|
PlacePhoto ইন্টারফেস | Photo ক্লাস |
PlacePhoto html_attributions স্ট্রিং হিসেবে ফেরত পাঠায়। | Photo একটি AuthorAttribution উদাহরণ প্রদান করে। |
পদ্ধতিগুলিতে ফলাফল অবজেক্ট এবং google.maps.places.PlacesServiceStatus প্রতিক্রিয়া পরিচালনা করার জন্য একটি কলব্যাক ব্যবহার করা প্রয়োজন। | প্রতিশ্রুতি ব্যবহার করে এবং অ্যাসিঙ্ক্রোনাসভাবে কাজ করে। |
পদ্ধতিগুলির জন্য PlacesServiceStatus চেক প্রয়োজন। | কোনও স্ট্যাটাস চেকের প্রয়োজন নেই, স্ট্যান্ডার্ড এরর হ্যান্ডলিং ব্যবহার করা যেতে পারে। আরও জানুন । |
PlacesService একটি মানচিত্র অথবা একটি div উপাদান ব্যবহার করে তাৎক্ষণিকভাবে তৈরি করতে হবে। | মানচিত্র বা পৃষ্ঠার উপাদানের উল্লেখ ছাড়াই, যেখানেই প্রয়োজন সেখানে Place তাৎক্ষণিকভাবে চিহ্নিত করা যেতে পারে। |
কোড তুলনা
এই বিভাগটি স্থানের ছবিগুলির কোড তুলনা করে Places Service এবং Place ক্লাসের মধ্যে পার্থক্যগুলি তুলে ধরে। কোড স্নিপেটগুলি প্রতিটি সংশ্লিষ্ট API-তে স্থানের ছবি অনুরোধ করার জন্য প্রয়োজনীয় কোডটি দেখায়।
স্থান পরিষেবা (উত্তরাধিকার)
নিচের স্নিপেটে PlacesService ব্যবহার করে ছবি ফেরত দেওয়া এবং পৃষ্ঠায় প্রথম ছবির ফলাফল প্রদর্শন দেখানো হয়েছে। এই উদাহরণে, স্থানের বিবরণের অনুরোধে name এবং photos ক্ষেত্র সহ একটি স্থানের আইডি উল্লেখ করা হয়েছে। পরিষেবার স্থিতি পরীক্ষা করার পর প্রথম ছবিটি পৃষ্ঠায় প্রদর্শিত হবে। PlacesService ইনস্ট্যান্টিয়েট করার সময়, একটি মানচিত্র বা একটি div উপাদান নির্দিষ্ট করতে হবে; যেহেতু এই উদাহরণে কোনও মানচিত্র নেই, তাই একটি div উপাদান ব্যবহার করা হয়েছে।
function getPhotos() {
// Construct the Place Details request.
const request = {
placeId: "ChIJydSuSkkUkFQRsqhB-cEtYnw",
fields: ["name", "photos"],
};
// Create an instance of PlacesService.
const attributionDiv = document.getElementById("attribution-div");
const service = new google.maps.places.PlacesService(attributionDiv);
// Check status and display the first photo in an img element.
service.getDetails(request, (place, status) => {
if (
status === google.maps.places.PlacesServiceStatus.OK && place
) {
const photoImg = document.getElementById('image-container');
photoImg.src = place.photos[0].getUrl({maxHeight: 400});
}
});
}
PlacesService এ লেখকের গুণাবলী
PlacesService লেখকের Google প্রোফাইল পৃষ্ঠার দিকে নির্দেশ করে এমন একটি URL ধারণকারী html_attributions স্ট্রিং হিসাবে প্রয়োজনীয় লেখকের গুণাবলী ফেরত পাঠায়। নিম্নলিখিত স্নিপেটে প্রথম ছবির ফলাফলের জন্য গুণাবলী ডেটা পুনরুদ্ধার দেখানো হয়েছে।
let attributionUrl = place.photos[0].html_attributions;
আরও জানুন
স্থান শ্রেণী (নতুন)
নিচের স্নিপেটে fetchFields() পদ্ধতি ব্যবহার করে স্থানের বিবরণ, প্রদর্শনের নাম এবং স্থানের ছবি সহ তথ্য ফেরত দেওয়া হয়েছে। প্রথমে একটি নতুন Place বস্তু একটি স্থান আইডি ব্যবহার করে তাৎক্ষণিকভাবে তৈরি করা হয়, তারপরে fetchFields() এ কল করা হয় যেখানে displayName এবং photos ক্ষেত্রগুলি নির্দিষ্ট করা থাকে। তারপর প্রথম স্থানের ছবি পৃষ্ঠায় প্রদর্শিত হয়। Place ক্লাস ব্যবহার করার সময় পরিষেবার স্থিতি পরীক্ষা করার প্রয়োজন নেই, কারণ এটি স্বয়ংক্রিয়ভাবে পরিচালিত হয়।
async function getPhotos() {
// Use a place ID to create a new Place instance.
const place = new google.maps.places.Place({
id: 'ChIJydSuSkkUkFQRsqhB-cEtYnw', // Woodland Park Zoo, Seattle WA
});
// Call fetchFields, passing the needed data fields.
await place.fetchFields({ fields: ['displayName','photos'] });
console.log(place.displayName);
console.log(place.photos[0]);
// Add the first photo to an img element.
const photoImg = document.getElementById('image-container');
photoImg.src = place.photos[0].getURI({maxHeight: 400});
}
Place শ্রেণীতে লেখকের গুণাবলী
Place ক্লাসটি লেখকের নাম, লেখকের গুগল প্রোফাইল পৃষ্ঠার জন্য একটি URI এবং লেখকের প্রোফাইল ছবির জন্য একটি URI সহ লেখকের অ্যাট্রিবিউশনগুলিকে AuthorAttribution উদাহরণ হিসাবে ফেরত পাঠায়। নিম্নলিখিত স্নিপেটে প্রথম ছবির ফলাফলের জন্য অ্যাট্রিবিউশন ডেটা পুনরুদ্ধার দেখানো হয়েছে।
let name = place.photos[0].authorAttributions[0].displayName;
let attributionUrl = place.photos[0].authorAttributions[0].uri;
let photoUrl = place.photos[0].authorAttributions[0].photoUri;