成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

API開發(fā) – 讓異常變得優(yōu)雅

nemo / 2349人閱讀

摘要:公司在做開發(fā)作為程序員難免會出點小哪如何捕獲呢。在上出現(xiàn)通常會出現(xiàn)閃退和無法解析錯誤一直加載用到的框架是有一個想法。將錯誤也變成格式碼定義為如果移動端發(fā)現(xiàn)錯誤為的話就溫柔提醒并且服務(wù)端保存錯誤信息供開發(fā)者修改下面說下如何實現(xiàn)。

公司在做APP開發(fā).作為程序員難免會出點小BUG!哪如何捕獲呢。在APP上出現(xiàn)bug通常會出現(xiàn)閃退,和無法解析錯誤一直加載.

用到的框架是 ThinkPHP5.

有一個想法。將錯誤也變成json格式.code碼定義為500 如果移動端發(fā)現(xiàn)錯誤為500的話 就溫柔提醒.并且服務(wù)端保存錯誤信息.供開發(fā)者修改.

下面說下如何實現(xiàn)。~

首先修改配置項 application/config.php

// 異常處理handle類 留空使用 	hinkexceptionHandle
"exception_handle"       => "appcommonexceptionHttp",

原本是留空的 現(xiàn)在改為我們自定義的控制器

創(chuàng)建一個Http控制器 繼承thinkexceptionHandle類 重寫 render方法. 這里注意一點 最好不要用框架里的一些方法了.這個文件的啟動順序大于一些方法.

 500,
            "msg" => $e->getMessage(),
            "data" => "URL : http://".$_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]
        ];
        $error_info = json_encode($arr, 512) . PHP_EOL;
        echo $error_info;
        if (!is_dir("../runtime/errorlog/")) mkdir("../runtime/errorlog/", 0777, true);


        file_put_contents("../runtime/errorlog/" . date("Ymd", time()) . ".txt", $error_info, FILE_APPEND);
        exit;
    }
}

這樣就能將thinkphp5原本的報錯頁面變成可識別的json串.喜歡的朋友請給一個支持

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/26172.html

相關(guān)文章

  • Laravel 程序架構(gòu)設(shè)計思路:使用動作類

    摘要:一個動作類,應(yīng)該有一個能夠說明其功能的名字,比如等。如果需要對我們的動作類實現(xiàn)某種適配器模式,這是非常方便的。使用單動作類的好處小巧而單一的邏輯域能夠防止代碼重復(fù)并提高代碼的可重用性,保持穩(wěn)定。易于針對各種場景進行獨立測試。 showImg(https://segmentfault.com/img/remote/1460000015208092); 當我們談?wù)摰綉?yīng)用程序的架構(gòu)的時候,經(jīng)...

    Caicloud 評論0 收藏0
  • 利用函數(shù)式優(yōu)雅的重構(gòu)API

    摘要:新建字典必要的驗證參數(shù)不能為空調(diào)用封裝數(shù)據(jù)到統(tǒng)一到結(jié)構(gòu)體異常處理包括中拋出到自定義異常和未知異常統(tǒng)一包裝到返回對象中這樣子的代碼在開發(fā)接口的時候比比皆是。 基礎(chǔ)知識 在開始之前 假設(shè)你從未了解過函數(shù)式編程,本文不會教你函數(shù)式里面的各種概念。而是用實際案例讓給了解到函數(shù)式編程的魅力,并且能夠在合適的場景中應(yīng)用。 ## 重構(gòu)之前 基本代碼如下 很普通的 springboot http接口。...

    bergwhite 評論0 收藏0
  • 如何優(yōu)雅的退出應(yīng)用和處理崩潰異常并重啟

    摘要:退出應(yīng)用的幾種方式退出應(yīng)用的方式很多,常見的也就下面四種。當發(fā)生時會轉(zhuǎn)入該函數(shù)來處理如果用戶沒有處理則讓系統(tǒng)默認的異常處理器來處理如果需要重啟重啟應(yīng)用,得使用重啟應(yīng)用結(jié)束應(yīng)用我們的方法用于彈出和收集信息。 寫在前面 這是最近一些朋友問我的問題,我把它整理成了一個庫,供大家享用,GitHub 地址:https://github.com/nanchen2251/AppManager 從四個...

    learn_shifeng 評論0 收藏0
  • 如何優(yōu)雅地處理Async/Await的異常?

    摘要:能夠捕獲非異步的異常。來匹配正常異常的情況。在中處理所有的異常如果出錯,則退出。所以,的模式使得異常處理變得非常簡潔。自從年雙十一正式上線,累計處理了億錯誤事件,付費客戶有陽光保險核桃編程荔枝掌門對微脈青團社等眾多品牌企業(yè)。 譯者按: 使用.catch()來捕獲所有的異常 原文: Async Await Error Handling in JavaScript 譯者: Fundeb...

    villainhr 評論0 收藏0

發(fā)表評論

0條評論

nemo

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<