返回Json資料瀏覽器帶上標籤解決方法

2022-02-02 16:25:52 字數 1805 閱讀 2101

問題:

這個是不同瀏覽器對返回資料處理的問題。

解決方法:

1. 在前端解決

var reg = /(.+)/g;  

var result = data.match(reg);

data = regexp.$1;

data就是後台返回前端的資料, 用正規表示式處理一下即可。

2. 在後台解決

在使用structs的fileupload元件進行上傳檔案的時候,在返回的json字串裡面總是莫名其妙的新增了標籤,例 如返回內容為"",在瀏覽器裡面就變成了"""",這樣就導致ajax解析返回值的時候出現錯誤。

我的上傳**,預設總是進入到error的處理中。

jquery.ajaxfileupload( else

},error:function(data, status, e)

});

谷歌了一圈之後,發現很多人和我是一樣的,解決辦法都是把response的返回型別設定為【text/html】。在struts2中需要在action的配置中這樣設定。

<resultname="success" type="json">

<paramname="root">msg

<paramname="contenttype">text/html;charset=utf-8

如果用的是annotation的方式的話,需要加上這句話

@action(value = "upload", results = , type = "json") })
在使用structs的fileupload元件進行上傳檔案的時候,在返回的json字串裡面總是莫名其妙的新增了

標籤,例 如返回內容為"",在瀏覽器裡面就變成了"""
",這樣就導致ajax解析返回值的時候出現錯誤。

我的上傳**,預設總是進入到error的處理中。

jquery.ajaxfileupload( else

},error:function(data, status, e)

});

谷歌了一圈之後,發現很多人和我是一樣的,解決辦法都是把response的返回型別設定為【text/html】。在struts2中需要在action的配置中這樣設定。

<resultname="success" type="json">

<paramname="root">msg

<paramname="contenttype">text/html;charset=utf-8

如果用的是annotation的方式的話,需要加上這句話

@action(value = "upload", results = , type = "json") })

瀏覽器返回錯誤大全

1xx 資訊提示這些狀態 表示臨時的響應。客戶端在收到常規響應之前,應準備接收乙個或多個1xx響應。2xx 成功這類狀態 表明伺服器成功地接受了客戶端請求。3xx 重定向客戶端瀏覽器必須採取更多操作來實現請求。例如,瀏覽器可能不得不請求伺服器上的不同的頁面,或通過 伺服器重複該請求。4xx 客戶端錯...

監聽瀏覽器返回操作

注意先要pushstate乙個位址,不然就監聽不到 function pushhistory window.history.pushstate state,title xx pushhistory window.addeventlistener popstate function e false 當...

監聽瀏覽器返回按鈕

function false function pushhistory window.history.pushstate state,title window.addeventlistener popstate function e false 雖然我們監聽到了後退事件,但是頁面還是會返回上乙個頁面...