- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Google Places API 获取地点的详细信息,但它没有返回照片的 photo_reference 属性。为什么??
我是这样调用它的:
var request = {
placeId: 'ChIJN1t_tDeuEmsRUsoyG83frY4'
};
service = new google.maps.places.PlacesService(document.createElement('div'));
service.getDetails(request, callback);
function callback(placeD, status) {
console.log( placeD );
console.log( JSON.stringify(placeD) );
if (status == google.maps.places.PlacesServiceStatus.OK) {
console.log( placeD );
}
}
这是回复
{
"address_components":[
{
"long_name":"5",
"short_name":"5",
"types":[
"floor"
]
},
{
"long_name":"48",
"short_name":"48",
"types":[
"street_number"
]
},
{
"long_name":"Pirrama Road",
"short_name":"Pirrama Rd",
"types":[
"route"
]
},
{
"long_name":"Pyrmont",
"short_name":"Pyrmont",
"types":[
"locality",
"political"
]
},
{
"long_name":"Council of the City of Sydney",
"short_name":"Sydney",
"types":[
"administrative_area_level_2",
"political"
]
},
{
"long_name":"New South Wales",
"short_name":"NSW",
"types":[
"administrative_area_level_1",
"political"
]
},
{
"long_name":"Australia",
"short_name":"AU",
"types":[
"country",
"political"
]
},
{
"long_name":"2009",
"short_name":"2009",
"types":[
"postal_code"
]
}
],
"adr_address":"5, <span class=\"street-address\">48 Pirrama Rd</span>, <span class=\"locality\">Pyrmont</span> <span class=\"region\">NSW</span> <span class=\"postal-code\">2009</span>, <span class=\"country-name\">Australia</span>",
"formatted_address":"5, 48 Pirrama Rd, Pyrmont NSW 2009, Australia",
"formatted_phone_number":"(02) 9374 4000",
"geometry":{
"location":{
"lat":-33.8666113,
"lng":151.19583239999997
},
"viewport":{
"south":-33.8669293,
"west":151.19521829999996,
"north":-33.86650529999999,
"east":151.1960371
}
},
"icon":"https://maps.gstatic.com/mapfiles/place_api/icons/generic_business-71.png",
"id":"4f89212bf76dde31f092cfc14d7506555d85b5c7",
"international_phone_number":"+61 2 9374 4000",
"name":"Google",
"opening_hours":{
"open_now":false,
"periods":[
{
"close":{
"day":1,
"time":"1800",
"hours":18,
"minutes":0,
"nextDate":1468828800000
},
"open":{
"day":1,
"time":"0800",
"hours":8,
"minutes":0,
"nextDate":1468792800000
}
},
{
"close":{
"day":2,
"time":"1800",
"hours":18,
"minutes":0,
"nextDate":1468915200000
},
"open":{
"day":2,
"time":"0800",
"hours":8,
"minutes":0,
"nextDate":1468879200000
}
},
{
"close":{
"day":3,
"time":"1800",
"hours":18,
"minutes":0,
"nextDate":1469001600000
},
"open":{
"day":3,
"time":"0800",
"hours":8,
"minutes":0,
"nextDate":1468965600000
}
},
{
"close":{
"day":4,
"time":"1800",
"hours":18,
"minutes":0,
"nextDate":1469088000000
},
"open":{
"day":4,
"time":"0800",
"hours":8,
"minutes":0,
"nextDate":1469052000000
}
},
{
"close":{
"day":5,
"time":"1800",
"hours":18,
"minutes":0,
"nextDate":1469174400000
},
"open":{
"day":5,
"time":"0800",
"hours":8,
"minutes":0,
"nextDate":1469138400000
}
}
],
"weekday_text":[
"Monday: 8:00 AM – 6:00 PM",
"Tuesday: 8:00 AM – 6:00 PM",
"Wednesday: 8:00 AM – 6:00 PM",
"Thursday: 8:00 AM – 6:00 PM",
"Friday: 8:00 AM – 6:00 PM",
"Saturday: Closed",
"Sunday: Closed"
]
},
"photos":[
{
"height":1365,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/105932078588305868215/photos\">Maksym Kozlenko</a>"
],
"width":2048
},
{
"height":3120,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/116783625253584801301/photos\">Samson Jabin</a>"
],
"width":4160
},
{
"height":1184,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/106645265231048995466/photos\">Malik Ahamed</a>"
],
"width":1776
},
{
"height":960,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/100919424873665842845/photos\">Donnie Piercey</a>"
],
"width":1280
},
{
"height":3024,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/117393076859685917096/photos\">Joann Chu</a>"
],
"width":4032
},
{
"height":5582,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/110754641211532656340/photos\">Robert Koch</a>"
],
"width":2866
},
{
"height":2988,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/103594026264127040754/photos\">Daniel Tyson</a>"
],
"width":5312
},
{
"height":2448,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/116976377324210679577/photos\">WH CHEN</a>"
],
"width":3264
},
{
"height":1184,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/106645265231048995466/photos\">Malik Ahamed</a>"
],
"width":1776
},
{
"height":4160,
"html_attributions":[
"<a href=\"https://maps.google.com/maps/contrib/116783625253584801301/photos\">Samson Jabin</a>"
],
"width":3120
}
],
"place_id":"ChIJN1t_tDeuEmsRUsoyG83frY4",
"rating":4.6,
"reference":"CmRaAAAAXa9Pjme9u0GwglGBnp5nlj_r92tKtn3rY9mx22RTSHhZSNnYd3RvNVzl33PB_7qyhodZq_KkKx2KH9JIB0NYXuUNgVz2UKO_OMakrvJGVNrJ2Y6ue78-OVBtO6y5NdE0EhBCQrgjqWR2H2rv2ZWZrmPcGhT_f4ZFK2OYBor8uimEqGIwtBTfew",
"reviews":[
{
"aspects":[
{
"rating":3,
"type":"overall"
}
],
"author_name":"Nila Sweeney",
"author_url":"https://plus.google.com/115167791509064907883",
"language":"en",
"profile_photo_url":"//lh4.googleusercontent.com/-P-5LDZmJbig/AAAAAAAAAAI/AAAAAAAAvAY/Df_n6XR0I2I/photo.jpg",
"rating":5,
"text":"Amazing place! So incredibly vibrant and hip. I love the way the office have been laid out. The way work-life balance is encouraged is truly impressive! Google, please hire me! ",
"time":1464213084
},
{
"aspects":[
{
"rating":0,
"type":"overall"
}
],
"author_name":"TheHealthRetreat",
"author_url":"https://plus.google.com/110246682709687277403",
"language":"en",
"rating":1,
"text":"I spend 250 thousand dollars a year with Google adwords..\nI own a Mental Health Drug and alcohol retreat.\n\nA fictitious person Antony William posted a negative review on my Business.\n\nThis person has never attended. I asked Google for the last 8 weeks to remove the third party review, I also sent 20 times a statutory declaration to googlemybusiness then goodle reviews and google legal stating Mr Antony had never attended the program.\n\nGoogle have refused to remove the review even though it clearly breaches Googles own guidelines and the post is defamatory.\nGoogle is enabling this person to continue to hurt our business by 100000 per month since the post went up.\n\nMy request for the post to be removed is being stone walled by google.\n\nI cannot believe that Google would treat their business partners so shabbily when they are being wronged by an anonymous person or I believe competition business.\nGoogle says over and over negotiate with Antony William, how can I negotiate with someone who doesn't exist? It is frustrating and plain wrong.\n\nIf Google does this to a client who spends 250000 ausd a year with them, god help us all.\n\nBy the way if you have depression and anxiety dealing with Google, come to us and we will help you. regards Francis",
"time":1468373176
},
{
"aspects":[
{
"rating":0,
"type":"overall"
}
],
"author_name":"Steve Morgan",
"author_url":"https://plus.google.com/103384372688674733198",
"language":"en",
"profile_photo_url":"//lh5.googleusercontent.com/-xCUbmlcbDas/AAAAAAAAAAI/AAAAAAAAIAE/OLWRkcph3xs/photo.jpg",
"rating":1,
"text":"Latest Andriod update 5.0 has broken Google Play for the Samsung Note 3. No Gmail Apo no fitbit exercise logging. Absolutely disgusting. Almost sebds ne to Apple",
"time":1468325696
},
{
"aspects":[
{
"rating":3,
"type":"overall"
}
],
"author_name":"Keith Hong",
"author_url":"https://plus.google.com/106314339785578978358",
"language":"en",
"profile_photo_url":"//lh3.googleusercontent.com/-Z69cMMxhr-c/AAAAAAAAAAI/AAAAAAAAAEs/CbphM5oqKas/photo.jpg",
"rating":5,
"text":"Not often you get invited to the google Australia HQ. Neat spot. Love their Pirrama place but their ODI location is pretty cool too (and soon overtakin most of Fairfax) ",
"time":1464676368
},
{
"aspects":[
{
"rating":3,
"type":"overall"
}
],
"author_name":"Alejandro Silva Avila",
"author_url":"https://plus.google.com/102339092633102421576",
"language":"en",
"profile_photo_url":"//lh5.googleusercontent.com/-WRvjv4eUHjY/AAAAAAAAAAI/AAAAAAAAUsk/6UjJkZU6U9w/photo.jpg",
"rating":5,
"text":"Completely stunning and different from anything you'd imagine. So many cool things to see and do you'd think people get lost trying to do some work haha! :)",
"time":1467896264
}
],
"scope":"GOOGLE",
"types":[
"point_of_interest",
"establishment"
],
"url":"https://maps.google.com/?cid=10281119596374313554",
"utc_offset":600,
"vicinity":"5 48 Pirrama Road, Pyrmont",
"website":"https://www.google.com.au/about/careers/locations/sydney/",
"html_attributions":[
]
}
如果我使用这个 URL 查看同一个地方的详细信息,我可以获得 photo_reference 属性:
https://maps.googleapis.com/maps/api/place/details/json?reference=CmRaAAAAXa9Pjme9u0GwglGBnp5nlj_r92tKtn3rY9mx22RTSHhZSNnYd3RvNVzl33PB_7qyhodZq_KkKx2KH9JIB0NYXuUNgVz2UKO_OMakrvJGVNrJ2Y6ue78-OVBtO6y5NdE0EhBCQrgjqWR2H2rv2ZWZrmPcGhT_f4ZFK2OYBor8uimEqGIwtBTfew&sensor=false&key=AIzaSyAmUTQw6a8sQESv77boQhf3tvTsaAJy09c
最佳答案
当使用 javscript 库时,照片对象有一个方法“getUrl”而不是 photo_reference。这有点令人困惑,但您可以遍历这些图像并使用 maxHeight 和/或 maxWidth 调用该方法(必须至少存在其中一个),它会返回一个照片 url。
https://developers.google.com/maps/documentation/javascript/3.exp/reference#PlacePhoto
function callback(placeD, status) {
console.log( placeD );
console.log( JSON.stringify(placeD) );
if (status == google.maps.places.PlacesServiceStatus.OK) {
placeD.photos.forEach(photo => {
console.log(photo.getUrl({maxHeight: 300})) // will log a url but no photo_reference
})
}
}
不幸的是,我还没有弄清楚如何从 javascript 库中获取 photo_reference。
关于javascript - Google Places API 库不返回 photo_reference 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38402495/
我一直在尝试提取 goolgeplaces api 照片引用,但没有取得任何成功。我想知道是否有人可以帮助我。下面是我的代码: // KEY Strings public static String
我正在使用 Google Places API 获取地点的详细信息,但它没有返回照片的 photo_reference 属性。为什么?? 我是这样调用它的: var request = {
我从 Google API 收到 JSON 响应。但是在 JSON 中有一个标签叫做 photo_reference。如何使用该标签显示图像。 最佳答案 NSDictionary *photoDict
我看到来自 google places 的 json 响应返回一个字段 photo_reference。有谁知道如何关联图片? "icon" : "http://maps.gstatic.com/
来自谷歌的Place Photos documentation我应该能够通过向他们的附近搜索、雷达或地点详细信息服务发出请求来检索 photo_reference key 。 我访问了他们的地点详情服
我看到来自 google places 的 json 响应返回一个字段 photo_reference。有谁知道如何关联图片? "icon" : "http://maps.gstatic.com/
来自谷歌的Place Photos documentation我应该能够通过向他们的附近搜索、雷达或地点详细信息服务发出请求来检索 photo_reference key 。 我访问了他们的地点详情服
我正在尝试通过 Angular 中的 Google 自动完成功能获取地点详细信息。 我的代码是: var input = document.getElementById('searchBar'); v
我在 Angular 5 中使用 Google Autocomplete(在 Maps Javascript API 下)。 为了我的网站,我检索了一个地方的详细信息,其中包括任何可用的照片。对于照片
我是一名优秀的程序员,十分优秀!