Knife4j的請(qǐng)求示例當(dāng)中有很多空白行的問題解決辦法
問題描述:
按正常來說不應(yīng)該有上方的空白,當(dāng)然如果只是查看我也不至于非要解決他,主要是假如接口是json傳參,調(diào)試界面都沒辦法修改參數(shù)…網(wǎng)上相關(guān)的資料又非常少,我別的項(xiàng)目引用的同樣的依賴并沒有出現(xiàn)如此情況。


引入的依賴:使用的springboot版本是2.3.12.RELEASE,使用的knife4j是2.0.9版本!
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>2.0.9</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.10.5</version>
<exclusions>
<exclusion>
<groupId>io.swagger</groupId>
<artifactId>swagger-models</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-models</artifactId>
<version>1.5.22</version>
</dependency>
Swagger2Config 配置類
@Configuration
@EnableSwagger2WebMvc
public class Swagger2Config {
@Value("${swagger.enable}")
private boolean enable;
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2).enable(enable).apiInfo(apiInfo()).select()
//為當(dāng)前包路徑
.apis(RequestHandlerSelectors.basePackage("com.fiftyonetrust.zyy.stdc.admin.center.controller")).paths(PathSelectors.any()).build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
//頁面標(biāo)題
.title("構(gòu)建RESTful API").description("構(gòu)建RESTful API")
//版本號(hào)
.version("1.0")
//描述
.description("API 描述").build();
}
}
該配置主要解決doc.html 404無法訪問的問題。
@Configuration
public class MyConfig extends WebMvcConfigurationSupport {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
}
}
查看F12發(fā)現(xiàn)別的項(xiàng)目訪問接口文檔并沒有這些錯(cuò)誤,而這個(gè)項(xiàng)目全是以下錯(cuò)誤信息:


解決過程:
剛開始我一直以為是Knife4j與security版本之間兼容問題導(dǎo)致的,然后也詢問了Knife4j官方人員,說有史以來沒有出現(xiàn)過類似的情況。針對(duì)于這個(gè)問題我也是排查了好幾天。
項(xiàng)目當(dāng)中使用了security,排查security的配置。


這里使用到了一個(gè)JwtAuthenticationTokenFilter過濾器,過濾器當(dāng)中有一行這個(gè)代碼注釋掉之后就可以了。

這里要注意,刪除掉之后一定要清除瀏覽器,不然可能會(huì)存在緩存。如下就是恢復(fù)正常了:

在網(wǎng)上查了關(guān)于這個(gè)Content-Security-Policy響應(yīng)頭的說明,CSP相當(dāng)于前臺(tái)的白名單,用來限制網(wǎng)站內(nèi)部一些資源獲取的來源,如限制CSS、JS、圖片或者第三方鏈接等。
CSP的設(shè)置可以在一定程度上限制XSS攻擊,有2種方式可以設(shè)置。第一種通過設(shè)置HTTP響應(yīng)頭,另一種通過HTML的<meta>標(biāo)簽。
XSS攻擊通常指的是通過利用網(wǎng)頁開發(fā)時(shí)留下的漏洞,通過巧妙的方法注入惡意指令代碼到網(wǎng)頁,使用戶加載并執(zhí)行攻擊者惡意制造的網(wǎng)頁程序。這些惡意網(wǎng)頁程序通常是JavaScript,但實(shí)際上也可以包括Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。攻擊成功后,攻擊者可能得到包括但不限于更高的權(quán)限(如執(zhí)行一些操作)、私密網(wǎng)頁內(nèi)容、會(huì)話和cookie等各種內(nèi)容。
以上就是Knife4j的請(qǐng)求示例當(dāng)中有很多空白行的問題解決辦法的詳細(xì)內(nèi)容,更多關(guān)于Knife4j請(qǐng)求中有空白行的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Java字符編碼簡(jiǎn)介_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了Java字符編碼簡(jiǎn)介,本文主要包括以下幾個(gè)方面:編碼基本知識(shí),Java,系統(tǒng)軟件,url,工具軟件等,感興趣的朋友一起看看吧2017-08-08
Java中使用ForkJoinPool的實(shí)現(xiàn)示例
ForkJoinPool是一個(gè)功能強(qiáng)大的Java類,用于處理計(jì)算密集型任務(wù),本文主要介紹了Java中使用ForkJoinPool的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09
@Conditional注解的使用場(chǎng)景和源碼解析
這篇文章主要介紹了@Conditional注解的使用場(chǎng)景和源碼解析,@Conditional是一個(gè)條件注解,它的作用是判斷Bean是否滿足條件,如果滿足條件,則將Bean注冊(cè)進(jìn)IOC中,如果不滿足條件,則不進(jìn)行注冊(cè),需要的朋友可以參考下2023-11-11
SpringBoot實(shí)現(xiàn)圖形驗(yàn)證碼的操作方法
隨著安全性的要求越來越高,目前許多項(xiàng)目中都使用了驗(yàn)證碼,驗(yàn)證碼也有各種類型,如 圖形驗(yàn)證碼、短信驗(yàn)證碼、郵件驗(yàn)證碼、人臉識(shí)別等,本文給大家介紹SpringBoot實(shí)現(xiàn)圖形驗(yàn)證碼的方法,感興趣的朋友跟隨小編一起看看吧2024-07-07
mybatis通過中間表實(shí)現(xiàn)一對(duì)多查詢功能
這篇文章主要介紹了mybatis通過中間表實(shí)現(xiàn)一對(duì)多查詢,通過一個(gè)學(xué)生的id查詢出該學(xué)生所學(xué)的所有科目,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-08-08
Java 敏感詞檢測(cè)工具的實(shí)現(xiàn)
本文介紹了Java敏感詞檢測(cè)工具的使用方法,包括依賴引入、核心方法使用實(shí)例、常規(guī)用法、自定義替換檢測(cè)策略等內(nèi)容,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-11-11
Windows環(huán)境下Java版本管理終極攻略(徹底告別JDK版本地獄)
JDK是Oracle公司提供的用于Java程序開發(fā)的完整軟件包,它是Java開發(fā)者不可或缺的核心工具,包含了編寫、編譯、調(diào)試和運(yùn)行Java程序所需的一切組件,這篇文章主要介紹了Windows環(huán)境下Java版本管理終極攻略的相關(guān)資料,需要的朋友可以參考下2026-06-06
IDEA提示 add *** to custom tags問題及解決
文章介紹了如何在文檔注釋中添加自定義注解(@xxx),并提供了添加和刪除注解的方法,總結(jié)了個(gè)人經(jīng)驗(yàn),希望對(duì)大家有所幫助2024-12-12

