十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問題一站解決
場(chǎng)景:手頭的項(xiàng)目需要對(duì)外提供API服務(wù),需要對(duì)請(qǐng)求數(shù)據(jù)進(jìn)行簽名校驗(yàn)。提交接口的數(shù)據(jù)會(huì)有''空字符值存在,laravel的Illuminate\Foundation\Http\Request接收到參數(shù)后,會(huì)將空字符強(qiáng)制轉(zhuǎn)換為NULL,導(dǎo)致簽名校驗(yàn)通不過(guò)。
站在用戶的角度思考問題,與客戶深入溝通,找到武邑網(wǎng)站設(shè)計(jì)與武邑網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、國(guó)際域名空間、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋武邑地區(qū)。
經(jīng)過(guò)一番努力,找到幕后黑手。
Illuminate/Foundation/Http組件中有定義這個(gè)中間件。
vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php
解決方法:
既然是中間件作祟,肯定在內(nèi)核中有注冊(cè)。找到內(nèi)核注釋該中間件就好。
app/Http/Kernel.php
class Kernel extends HttpKernel
{
    /**
     * The application's global HTTP middleware stack.
     *
     * These middleware are run during every request to your application.
     *
     * @var array
     */
    protected $middleware = [
        \App\Http\Middleware\CheckForMaintenanceMode::class,
        \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
        \App\Http\Middleware\TrimStrings::class,
        //\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,//會(huì)將''轉(zhuǎn)化為null
        \App\Http\Middleware\TrustProxies::class,
        \Illuminate\Session\Middleware\StartSession::class,
    ];