2017-12-18 386 views
1

讓我首先解釋我試圖實現的目標 1.用戶提交表單申請成員資格,應用程序向用戶發送郵件確認用戶請求 2.管理員批准或拒絕請求,應用程序發送郵件給用戶通知他們在TransportManager.php中找不到Laravel 5.4 Class'GuzzleHttp Client'(行185)

使用mailtrap,我已能夠使本地工作。移動到生產,我轉而使用Sparkpost按照sending mail with sparkpost tutorial 步驟,但我不斷收到錯誤

類「GuzzleHttp \客戶端」在TransportManager.php未找到(線185)

我可以看到運行作曲家供應商文件夾中的文件夾狂飲需要guzzlehttp /狂飲

"require": { 
    "php": ">=5.6.4", 
    "guzzlehttp/guzzle": "^6.3", 
    "laravel/framework": "5.4.*", 
    "laravel/tinker": "~1.0" 
}, 

我只是不明白,爲什麼我得到這個錯誤,或者如何解決它。需要幫助解決這個問題

回答

0

你可能想要確保你第一次有一個require './vendor/autoload.php包括(這應該是在Laravel默認情況下)。

如果autoload.php已經包括你還是收到此錯誤,然後根據這個申請錯誤 - https://github.com/SparkPost/php-sparkpost/issues/37,則需要手動運行

php composer.phar require guzzlehttp/guzzle

+0

我在我的供應商的文件夾autoload.php。你是這個意思嗎?還是有一個文件,我需要有內線? 順便說一下,我已經手動執行了'composer require guzzlehttp/guzzle',並將其添加到我的composer.json文件中 – Mena

+0

您需要驗證是否有一個'require。/ vendor/autoload.php'寫在被調用的代碼路徑。只要在文件夾中的文件將無濟於事。當你執行這個文件的'require'時,它會依次將所有已安裝依賴項的類加載到你的代碼中。一旦包含這些類,編譯器就會停止抱怨在使用它時該類缺失。 – DeadLock

+0

MemberController是郵件正在被啓動,sp通過你的迴應我在最前面添加了'require'./ vendor/autoload.php''。有一種非常強烈的感覺,我做錯了,但是這是正確的做法嗎?錯誤與以前一樣 – Mena

0

最後通過執行以下操作

使我的代碼工作

起初我跑composer require guzzlehttp/guzzle添加guzzlehttp /狂飲要求composer.json文件的部分

其次,我跑composer update

最後,我將我的文件從本地服務器上傳到生產服務器。然後我將use GuzzleHttp\Client添加到我的郵件控制器,一切運行良好。

我想我錯過了早期的要求guzzlehttp後不運行作曲家更新/狂飲