Как Я Могу Интегрировать API Shippo С Laravel 8

#laravel #shippo

Вопрос:

Я создаю веб-сайт электронной коммерции с помощью Laravel 8 и пытаюсь включить тарифы на доставку в реальном времени с помощью API Shippo. Мне удалось установить Shippo через composer, но я получаю сообщение об ошибке, в котором говорится слишком мало аргументов или неопределенная переменная. Я заимствую некоторый код из статьи, касающейся Шиппо, но я продолжаю получать ошибки. У вас есть аналогичная проблема? Вы решили эту проблему? Любая помощь будет признательна. Вот мой код контроллера,

 <?php

namespace AppHttpControllersUser;

use AppHttpControllersController;
use IlluminateHttpRequest;
use AppModelsShipDivision;
use AppModelsShipDistrict;
use AppModelsShipState;
use AppModelsProduct;
use AppServicesShipping_New;
use AppModelsUser;
use Auth;
useAppHttpControllersFrontendCartController;
use GloudemansShoppingcartFacadesCart;
use CarbonCarbon;

class CheckoutController extends Controller
{

  /**
   * @var Shipping
   */
  private $shipping;

  /**
   * @var UserRepository
   */
  private $user;

  /**
   * CheckoutController constructor.
   * @param UserRepository $user
   * @param Shipping $shipping
   */
  public function __construct(User $user, Shipping_New $shipping)
  {
      $this->middleware('auth');
      $this->shipping = $shipping;
      $this->user = $user;
  }

  public function DistrictGetAjax($division_id) {

    $ship = ShipDistrict::where('division_id',$division_id)->orderBy('district_name', 'ASC')->get();

    return json_encode($ship);

  }

  public function StateGetAjax($district_id) {

    $ship = ShipState::where('district_id',$district_id)->orderBy('state_name', 'ASC')->get();

    return json_encode($ship);

  }

  public function CheckoutStore(Request $request) {

    $data = array();
    $data['name'] = $request->name;
    $data['shipping_last_name'] = $request->shipping_last_name;
    $data['email'] = $request->email;
    $data['phone'] = $request->phone;
    $data['zip'] = $request->zip;
    $data['street1'] = $request->street1;
    $data['company'] = $request->company;
    $data['city'] = $request->city;
    $data['country'] = $request->country;
    $data['notes'] = $request->notes;
    $data['state_id'] = $request->state_id;
    $data['district_id'] = $request->district_id;
    $data['division_id'] = $request->division_id;
    $cartTotal = Cart::total();
    // The rates is a complete object but for this we
    // only need the rates_list items and will pass that.


    if ($request->payment_method == 'stripe') {


      return view('online-boutique-stores.payment.stripe', compact('data','cartTotal'));


    }

      elseif ($request->payment_method == 'paypal') {

        $carts = Cart::content();
        $cartQty = Cart::count();
        $cartTotal = Cart::total();

        return view('online-boutique-stores.payment.paypal', compact('data', 'cartTotal'));

      }

      else {

        return 'cash';

      }

  }

}
 

Ответ №1:

Удалите эти ваши аргументы конструкции. Потому что вы не видите никакой пользы в этих аргументах. Вы можете использовать этот способ ?

 public function __construct()
 

{
$это->промежуточное программное обеспечение(‘auth’);

}

Комментарии:

1. Итак, полностью избавиться от конструктора публичных функций?