最近,我学习了Laravel,并尝试实现BingAds SDK来将一些报告获取到我的数据库,但是失败了。
我在app / http / Controllers / BingAdController.php中有一个名为BingAdController.php的控制器
BingAds SDK是通过composer安装的,它们位于vendor / microsoft / bingads / samples / V12 / ReportRequests.php
BingAdController.php
namespace App\Http\Controllers;
use SoapVar;
use SoapFault;
use Exception;
use SoapClient;
use Illuminate\Http\Request;
use App\BingAd;
use App\Http\Controllers\Controller;
use Microsoft\BingAds\V12\Reporting\ReportRequestStatusType;
use Microsoft\BingAds\Auth\ServiceClient;
use Microsoft\BingAds\Auth\ServiceClientType;
use Microsoft\BingAds\Samples\V12\AuthHelper;
use Microsoft\BingAds\Samples\V12\ReportRequestLibrary;
include("/Applications/MAMP/htdocs/laravel/vendor/microsoft/bingads/samples/V12/ReportRequests.php");
class BingAdController extends Controller {
public function bingadsReporting(){
ReportRequests.php
namespace Microsoft\BingAds\Samples\V12;
// require_once __DIR__ . "/vendor/autoload.php";
require_once "/Applications/MAMP/htdocs/laravel/vendor/autoload.php";
include __DIR__ . "/AuthHelper.php";
include __DIR__ . "/ReportRequestLibrary.php";
use SoapVar;
use SoapFault;
use Exception;
use Microsoft\BingAds\V12\Reporting\ReportRequestStatusType;
use Microsoft\BingAds\Auth\ServiceClient;
use Microsoft\BingAds\Auth\ServiceClientType;
use Microsoft\BingAds\Samples\V12\AuthHelper;
use Microsoft\BingAds\Samples\V12\ReportRequestLibrary;
$GLOBALS['AuthorizationData'] = null;
$GLOBALS['Proxy'] = null;
$GLOBALS['CampaignManagementProxy'] = null;
class ReportRequests {
public $DownloadPath, $length, $folder;
Laravel继续说找不到课程... 我在这个问题上被困了2天...请帮助
答案 0 :(得分:1)
您不应该在代码中手动调用include
或require_once
-Laravel开箱即用使用Composer的自动加载器,因此您应该能够引用所需的类,它将剩下的。
首先,请确保您已通过Composer安装了Bing's SDK-即已将其添加到composer.json
中,并且已通过命令行工具进行了安装。如果您只是自己下载并将其放在vendor
目录中,它将无法正常工作。
然后,您应该可以呼叫new Microsoft\BindAds\Auth\ServiceClient
或所需的任何课程-Composer将知道在哪里以及如何为您找到该课程。
如果您是通过Composer安装的,但仍然遇到问题,则需要提供遇到问题的确切代码,以及所看到的完整错误和堆栈跟踪信息,以便我们协助进行调试。
答案 1 :(得分:0)
最后我找到了解决方法。
将“ vendor / microsoft / bingads”添加到vendor / composer.json-> classmap
不知道为什么BingAds即使通过composer安装也不能自动更新composer.json。