首頁 > 後端開發 > php教程 > 自定義HTTP客戶端請求異常的截斷

自定義HTTP客戶端請求異常的截斷

Robert Michael Kim
發布: 2025-03-06 02:39:09
原創
236 人瀏覽過

Customize the Truncation of HTTP Client Request Exceptions

>被截斷的HTTP客戶端異常沮喪,掩蓋了錯誤報告或哨兵中關鍵的調試信息嗎? Laravel對HTTP響應的默認截斷可能會隱藏有關請求失敗的重要線索。

在Laravel 11.35中解決了這個問題! 兩種新方法提供了對異常截斷的精確控制。 只需將它們添加到您的

>:bootstrap/app.php>

// bootstrap/app.php

use Illuminate\Http\Client\RequestException;

return Application::configure(basePath: dirname(__DIR__))
    // ...
    ->withExceptions(function (Exceptions $exceptions) {
        $exceptions->dontTruncateRequestExceptions(); // Completely disable truncation

        // Or...

        $exceptions->truncateRequestExceptionsAt(260); // Set a custom truncation length
    })->create();
登入後複製
現在,HTTP客戶端異常將保持完全完整,或將其截斷為指定的長度(比默認值更長)。 您保留對異常處理和登錄的完全控制:

try {
    $response = Http::throws()->get('https://api.example.com/some-error');

    // ...
} catch (\Illuminate\Http\Client\RequestException $e) {
    Log::error('HTTP Error', [
        'message' => $e->getMessage(), // Truncated or not, depending on your setting
        'response' => $e->response->json(),
        'status' => $e->response->status(),
        // ...
    ]);
}
登入後複製
有關Laravel HTTP客戶端中的例外處理和截斷的詳細信息,請諮詢Laravel官方文檔。

特別感謝史蒂夫·鮑曼(Steve Bauman)(拉申請#53734)在Laravel 11.35.0!

以上是自定義HTTP客戶端請求異常的截斷的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板