当前位置:首页 > 开发 > 正文内容

laravel路由转发接口

hackcode2023年11月25日 18:59开发421

路由文件

<?php

use App\Http\Controllers\Api;
use App\Repositories\PublicRepository;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;


/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/
Route::fallback(function (Request $request) {
       //未找到路由全部转发
    (new PublicRepository())->originApi($request);
});

转发逻辑文件

    /**
     * 接口转发
     */

    public function originApi($request)
    {

        $requestUrl = "https://lfhs.jjszf.com/index.php/merchant/";
        //  var_dump($request->header());
        $header = [
            "storeId:" . $request->header()['storeid'][0],
            "uniacid:" . $request->header()['uniacid'][0],
            "userId:" . $request->header()['userid'][0],
            "appType:apk"
        ];

        if ($request->isMethod('post')) {

            $url = $requestUrl . substr($request->fullUrl(), strpos($request->fullUrl(), 'index.php') + 10);
            $curl = curl_init();
            curl_setopt($curl, CURLOPT_URL, $url);
            curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
            curl_setopt($curl, CURLOPT_POST, 1);
            curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($request->input()));
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
            $result = curl_exec($curl);
            curl_close($curl);
            // var_dump($result);
            // $result = json_decode($result, true);
            echo $result;
        }
        if ($request->isMethod('get')) {

            $url = $requestUrl . substr($request->fullUrl(), strpos($request->fullUrl(), 'index.php') + 10);
            $curl = curl_init();
            curl_setopt($curl, CURLOPT_URL, $url);
            curl_setopt($curl, CURLOPT_HTTPHEADER,  $header);
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
            $result = curl_exec($curl);
            curl_close($curl);

            // $result = json_decode($result, true);

            echo $result;
        }
    }


返回列表

上一篇:carbon生成时间区间

没有最新的文章了...