首页 > 解决方案 > 无法在 Laravel 5.5 上更新

问题描述

我有问题。

这是我的控制器

public function finish(Request $request)
{
    $result = $request->input('data');
    //$data = json_decode($result, true);
    return $this->InvoiceBayar($result);
}

public function InvoiceBayar($result)
{
    $data = json_decode($result, true);
    $transaction = $data['transaction_status'];
    $type = $data['payment_type'];
    $order_id = $data['order_id'];
    $fraud = $data['fraud_status'];
      Fee::where('invoice',$order_id)
      ->update([
          'status' => 'Paid',
      ]);
      echo "Transaction order_id: " . $order_id ." successfully transfered using " . $type;
}

这是我的路线

Route::POST('/notification', 'SnapController@finish');

当支付网关向我发送参数时,我无法更新数据库。但是当我使用邮递员时。我成功更新数据库

标签: laravelpostman

解决方案


您需要使用$request->all()它,因为它将包含所有支付网关数据。

public function finish(Request $request)
{
   $result = $request->all();
   return $this->InvoiceBayar($result);
}

推荐阅读