亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

js前端傳json后臺(tái)接收‘‘被轉(zhuǎn)為quot的問(wèn)題解決

 更新時(shí)間:2020年11月12日 08:55:58   作者:LuckyWangxs  
這篇文章主要介紹了js前端傳json后臺(tái)接收‘‘被轉(zhuǎn)為"的問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

一、產(chǎn)生原因

        前端傳json格式數(shù)據(jù),后臺(tái)接收卻發(fā)現(xiàn)有一堆& quot;,但是如果后臺(tái)接收參數(shù)用@RequestBody注解,則不會(huì)出現(xiàn)這個(gè)問(wèn)題,出現(xiàn)這一問(wèn)題的原因就是后臺(tái)沒有按照json格式去接收參數(shù),按照json接收參數(shù)的前提是請(qǐng)求頭 參數(shù)Content-Type:application/json,如此一來(lái),后臺(tái)框架才知道如何去處理參數(shù),但有時(shí)候遇到的需求無(wú)法這么寫,例如發(fā)送下載請(qǐng)求:
        json格式參數(shù)最常見的是發(fā)送ajax請(qǐng)求,但是ajax無(wú)法觸發(fā)瀏覽器下載機(jī)制,故不支持下載使用;

        用a標(biāo)簽發(fā)下載請(qǐng)求,攜帶參數(shù)有限,適合單個(gè)下載請(qǐng)求

        利用form表單拼接參數(shù),提交表單發(fā)送請(qǐng)求,但無(wú)法發(fā)送攜帶json參數(shù)的請(qǐng)求,所以只能把json格式的字符串拼接到輸入框,后臺(tái)用String接收,這樣就會(huì)出現(xiàn)將引號(hào)轉(zhuǎn)譯為& quot;這一問(wèn)題。

二、解決方案

1、方案一

        使用org.apache.commons.lang.StringEscapeUtils這個(gè)類下的unescapeHtml()這個(gè)方法

@RequestMapping("/downloads")
public ResultVO downloads(String models) {
 String jsonModels = StringEscapeUtils.unescapeHtml(models);
 // 然后再去轉(zhuǎn)為你要的Object
 
 return ResultVO.success();
}

        pom依賴

<dependency>
 <groupId>commons-lang</groupId>
 <artifactId>commons-lang</artifactId>
 <version>2.6</version>
</dependency>

2、方案二

        將所有的&quot替換回引號(hào)

String jsonModels = models.replaceAll("&quot;", "\"");

三、結(jié)束

        批量下載已搞定,頗有收獲,所以遇到問(wèn)題還是需要耐心分析,認(rèn)真記錄的,不僅要解決掉問(wèn)題,還要知根知底。 

        另外感謝這篇文章 https://blog.csdn.net/charset_ok/article/details/80239882

到此這篇關(guān)于js前端傳json后臺(tái)接收‘‘被轉(zhuǎn)為&quot;的問(wèn)題解決的文章就介紹到這了,更多相關(guān)json后臺(tái)接收&quot;內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論