十次方微服務專案實戰04 統一異常和跨域問題處理

2021-09-24 20:53:33 字數 1175 閱讀 9031

在實際專案中,通常會對公共異常進行統一處理,另外,在前後端分離等專案中也會存在跨域問題,本文就這兩個方面做下統一說明。

為了使**更統一維護,建立乙個類集中處理異常。

com.tensquare.base.controller中建立公共異常處理類baseexceptionhandler

**如下:

package com.tensquare.base.controller;

import entity.result;

import entity.statuscode;

import org.springframework.web.bind.annotation.controlleradvice;

import org.springframework.web.bind.annotation.exceptionhandler;

import org.springframework.web.bind.annotation.responsebody;

/** * created by me on 2019/6/25.

*/@controlleradvice

public class baseexceptionhandler

}

如上,當系統出現異常時,會統一處理。

首先看下,跨域是什麼?瀏覽器從乙個網域名稱的網頁去請求另乙個網域名稱的資源時,網域名稱、埠、協議任一不變通,都是跨域。

由於我們採用前後端分離開發,也是前後端分離部署,必然會存在跨域問題。

那麼,如何解決跨域呢?很簡單,只需要在controller類上新增註解@crossorigin即可,該註解其實是cors的實現。

cors(cross-origin resource sharing,跨資源共享)w3c出的乙個標準,其思想是使用自定義的http頭部讓瀏覽器與伺服器進行溝通,從而決定請求或響應是成功還是失敗。

因此,要想實現cors進行跨域,需要再伺服器進行一些設定,同時前端也需要做一些配置和分析,過多的本文就不必再描述,有興趣google一下。

20200317 十次方 專案介紹 一

本專案前後端分離,前後端分離已經對我來說很熟悉了。就是前端開發前端,後端開發後端,中間傳json格式的資訊來完成開發。後端通過介面博暴露給前端,介面就相當於url。前端拿到json資訊對前端頁面進行渲染,完成開發。所謂微服務,就是同類容器的集合,比如老師說過的秒殺系統的時候,訊息佇列mq撐不住了。就...

十次方專案總結 2 MongoDB

mongodb是乙個基於分布式檔案儲存的資料庫,屬於非關係型資料庫 nosql 基於c 編寫。它支援的資料結構非常鬆散,是類似json的bson格式,因此可以儲存非常複雜的資料。它的特點是高效能,易部署,易使用,適合存入資料量大 寫入操作頻繁 資料價值不高的資料。mongodb的體系結構是一種邏輯結...

黑馬十次方專案day01 15之異常處理

測試根據標籤的id查詢標籤的資訊.如果id是資料庫中沒有的值,那麼返回的資訊如下 這樣的資訊返回給瀏覽器,前端是無法處理的.因此就需要對異常進行捕獲,然後按照約定result類的資訊返回給前端 在tensquare base模組的controller包下,建立異常的處理類 package com.t...