我知道这个问题很常见,不过,我找不到任何直接的答案。所有的答案都提到了实现这一点需要什么,但根本没有最终的解决方案。两个de G文档都没有直截了当地说。我试图使用谷歌我的业务API来获得评论和评级的一家公司,一组位置完全由谷歌验证。(https://developers.google.com/my-business/content/review-data)我现在唯一的目标是列出所有的Google评论,并将它们显示在公司的网站上。通过Ajax/PHP或类似的方式进行API调用(正确的GET)。API响应Google评论列表(JSON格式)以HTML显示结果。
- 我已经一步一步地遵循了前提条件说明:我已经通过OAuth2 Playground批准并测试了我的API凭据,并且运行良好。我成功获得了{accountId}和{locationId}(https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/)我设法通过添加访问令牌来获取所有评论-(https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/?access_token=token),但这些都是通过OAuth2 plasery完成的-问题是我想在网站上显示的评论,而不是由谷歌OAuth操场,因为它会过期,评论将不会自动更新的网站
我在公司的网站上找不到任何PHP / JavaScript代码示例来开始实现这个。我对如何使用Google PHP客户端库有点困惑。太多的方法了,但在我的测试中没有一个有效(https://github.com/googleapis/google-api-php-client)
如果是这样的话,这种方法会不会总是提示用户选择登录哪个帐户?这不是我想要的行为。我只想获得所有的评论并将其显示在网站上,这不应该要求用户进行登录。
如果您能分享代码和过程,将会很有帮助。
谢谢你的帮助,祝你愉快
3条答案
按热度按时间0dxa2lsx1#
谷歌让你拉5,它已经这样很长很长一段时间。
我写了一个API,与谷歌接口做你需要的,所有你需要的是地方ID,你可以得到历史评论,一旦你获得历史评论,你可以使用本地API实时,不要锤击API,否则它会上限你:)
希望它能有所帮助,请参阅下面的演示URL(只需将位置ID与您需要的位置ID交换,并将您消费的内容保存到reviews.json,您就可以获得历史评级)。
https://api.reviewsmaker.com/gmb/?placeid=ChIJCezbnsal2YgRySx0GXk5hEo
的数据
1szpjjfi2#
通常使用API涉及,
1.从URL获取数据
1.循环/使用数据做(输出?)某事
PHP实现示例
下面是我以前的一个项目中的PHP示例实现。https://gist.github.com/shramee/fc115a909fd1f8726a589d1b0b351e3e
取评论
我们使用cURL来获取评论。
字符串
循环浏览评论
然后,我们循环浏览评论并输出一些HTML,
型
对于JavaScript,你可以使用类似fetch/axios的东西来获取数据,然后循环遍历这些项来创建一些React元素或执行一些DOM操作。
7gcisfzg3#
希望现在回答还不算太晚。
一种方法是将Auth2.0 playground生成的clientId、clientSecret和refreshToken存储在服务器上。当accessToken(POST https://www.googleapis.com/oauth2/v4/token)过期时,定期刷新它。
当然,谷歌不允许使用专线小巴服务帐户,所以这似乎是唯一的方法.
P.S.您需要解决您的Auth creds无效的情况。(理想情况下不应该发生)