【问题标题】:Error while trying to get access to google.com for my local web application尝试为我的本地 Web 应用程序访问 google.com 时出错
【发布时间】:2016-01-05 21:52:29
【问题描述】:

我希望你们中的某个人可以就这个问题给我一些有用的指导!我要生气了! 事实是这样的: 我想通过我的本地网络应用程序使用 Google SMTP 发送电子邮件。我在我的应用程序的根文件夹中创建了一个 .json 文件,如下所示:

{
"require": {
    "phpmailer/phpmailer": "^5.2",
    "league/oauth2-client": "^1.0"
}}

为了通过编译器下载和安装所需的 PHPMailer 和 oauth2client。 然后我在google developer console 中创建了一个新项目并进行了配置:我启用了 gmail API,获得了正确的凭据(ID 和 SECRET)并设置了授权的直接 URI,如下所示:

http://localhost/folder1/vendor/phpmailer/phpmailer/get_oauth_token.php

现在我用获得的凭据编辑了 get_oauth_token.php,但是当我尝试在浏览器中插入以前的 URI 以获取权限时,发生了错误:

致命错误:在 C:\xampp\htdocs\folder1\vendor\phpmailer\phpmailer\get_oauth_token.php 中找不到类 'League\OAuth2\Client\Provider\Google' /strong> 第 28 行

而且我不能继续.. 我尝试使用主 php 脚本发送和发送电子邮件,但显然我无法访问并且我的请求被服务器拒绝。有什么建议? 谢谢,祝您有愉快的一天!

【问题讨论】:

    标签: php email web-applications gmail phpmailer


    【解决方案1】:

    遇到了完全相同的问题。我所做的是安装:

    composer require league/oauth2-google
    

    问题消失了

    ;)

    【讨论】:

      【解决方案2】:

      PHPMailer composer.json 默认情况下不需要联盟 OAuth2 包,原因有两个:

      • 它们将在 PHP 版本
      • 不是每个人都需要它们。

      由于这些原因,它们位于 composer.json 的“建议”部分,因此您需要为您的项目手动要求它们。这样做,自动加载器将能够找到它们。

      【讨论】:

      • 我需要哪些文件?我应该要求他们进入 get_oauth_token.php 吗?谢谢。
      • 查看PHPMailer的composer.jsonsuggest部分的行,将它们添加到您自己的composer.jsonrequires部分,然后composer install将安装所有库你需要,你只需要普通的作曲家自动加载器。
      • 我在我的 .json 文件的开头写了两个字符串,关于 league/oauth2-clientphpmailer 在 require 部分,我已经作曲家安装了它们。我包括了作曲家创建的autload.php 的路径。我尝试升级并尝试重构,但它告诉我没有什么要安装或升级的。
      猜你喜欢
      • 2018-09-02
      • 1970-01-01
      • 2019-11-09
      • 2022-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-02
      • 1970-01-01
      相关资源
      最近更新 更多