欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在Js頁面通過POST傳遞參數(shù)跳轉(zhuǎn)到新頁面詳解

 更新時(shí)間:2017年08月25日 10:54:09   作者:yexiaobai  
這篇文章主要給大家介紹了關(guān)于在Js頁面通過POST傳遞參數(shù)跳轉(zhuǎn)到新頁面的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

場景

最近在工作中遇到一個(gè)需求,有個(gè)頁面 a.vm,對 ajax 請求的結(jié)果進(jìn)行判斷后,獲取結(jié)果里面的數(shù)據(jù)傳遞給一個(gè) URL(b.htm),跳轉(zhuǎn)到新的頁面 b.htm。

遇到的問題

因?yàn)橐婚_始是 GET 請求,所以當(dāng)傳遞的數(shù)據(jù)過大的時(shí)候,會報(bào)錯(cuò) nginx 414 request-uri too long

客戶端請求頭緩沖區(qū)大小,如果請求頭總長度大于小于128k,則使用此緩沖區(qū)

client_header_buffer_size 128k;

請求頭總長度大于128k時(shí)使用 large_client_header_buffers 設(shè)置的緩存區(qū)

large_client_header_buffers 指令參數(shù)4為個(gè)數(shù),128k為大小,默認(rèn)是8k。申請4個(gè)128k。

large_client_header_buffers 4 128k;

當(dāng)http 的URI太長或者request header過大時(shí)會報(bào)414 Request URI too large400 bad request錯(cuò)誤

造成這樣的原因

cookie中寫入的值太大造成的,因?yàn)閔eader中的其他參數(shù)的size一般比較固定,只有cookie可能被寫入較大的數(shù)據(jù)

請求參數(shù)太長,比如發(fā)布一個(gè)文章正文,用urlencode后,使用get方式傳到后臺

本次的故障原因是由問題 2 引起的。即當(dāng)請求頭過大時(shí),超過 large_client_header_buffer 時(shí),nginx可能返回 Request URI too large (414) 或者 Bad-request(400) 錯(cuò)誤。

當(dāng)Request line的長度大于large_client_header_buffer的一個(gè)buffer(128k)時(shí),nginx會返回"Request URI too large" (414)錯(cuò)誤,對應(yīng)上面的場景2。

請求頭中最長的一行也要小于large_client_header_buffer,當(dāng)不是Request line的最長行大于一個(gè)buffer(128k)時(shí),會返回"Bad-request"(400)錯(cuò)誤,對應(yīng)上面的場景1。

臨時(shí)解決辦法

修改 nginx 參數(shù)

主要是調(diào)大以下參數(shù)值:

client_header_buffer_size 512k;
large_client_header_buffers 4 512k;

但是調(diào)大這個(gè)值會出現(xiàn)一個(gè)問題,當(dāng)我的服務(wù)器騰挪數(shù)據(jù)量比較大的時(shí)候,可能又要修改這樣不是一個(gè)辦法,最終的解決辦法就是由 GET 請求方式修改為 POST 請求方式

最終解決辦法

使用 jquery.redirect.js 框架來處理這樣的情況,主要使用到的函數(shù)是 $.redirect

代碼如下:

 $http({
    method: "POST",
    dataType: "json",
    contentType: 'application/json',
    url: url,
    data: data,
   }).success(function (data) {
    if (data.success) {
     crId = data.data;
     $scope.errMsg = "";
     var url = "/xx.htm?id=" + id;
     window.location.href = url
    } else {
     $scope.errMsg = data.message;
     $scope.isDisabled = false;
     $scope.errorCode = data.code;
     $scope.trv.physics = data.data;
     if(data.statusCode === -224){
      var vms = data.data;
      console.log("vms: " + vms);

      $.redirect('/b.htm', {'vms': vms.toString(), 'resource': trv.resource, 'errMsg': $scope.errMsg});
     }

    }
   }).error(function (data) {
    alert(data);
    $scope.isDisabled = false;
   });

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • 微信小程序?qū)崿F(xiàn)循環(huán)嵌套數(shù)據(jù)選擇

    微信小程序?qū)崿F(xiàn)循環(huán)嵌套數(shù)據(jù)選擇

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)循環(huán)嵌套數(shù)據(jù)選擇,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • JavaScript基于自定義函數(shù)判斷變量類型的實(shí)現(xiàn)方法

    JavaScript基于自定義函數(shù)判斷變量類型的實(shí)現(xiàn)方法

    這篇文章主要介紹了JavaScript基于自定義函數(shù)判斷變量類型的實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了javascript判斷變量類型的自定義函數(shù)定義與使用方法,并針對不同瀏覽器給出了相關(guān)的分析與說明,需要的朋友可以參考下
    2016-11-11
  • 使用webpack處理stylus文件的配置方法

    使用webpack處理stylus文件的配置方法

    這篇文章主要介紹了使用webpack處理stylus文件的配置方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2024-03-03
  • 下載文件個(gè)別瀏覽器文件名亂碼解決辦法

    下載文件個(gè)別瀏覽器文件名亂碼解決辦法

    下載文件個(gè)別瀏覽器文件名亂碼解決辦法,需要的朋友可以參考一下
    2013-03-03
  • 讀懂CommonJS的模塊加載

    讀懂CommonJS的模塊加載

    這篇文章主要介紹了CommonJS的模塊加載,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • JavaScript制作簡易的微信打飛機(jī)

    JavaScript制作簡易的微信打飛機(jī)

    這篇文章主要介紹了JavaScript制作簡易的微信打飛機(jī),只有簡單的功能,大神們可以自由擴(kuò)展哈。有需要的小伙伴可以參考下。
    2015-03-03
  • js使用正則實(shí)現(xiàn)ReplaceAll全部替換的方法

    js使用正則實(shí)現(xiàn)ReplaceAll全部替換的方法

    JS?沒有提供replaceAll這樣的方法。使用正則表可以達(dá)成Replace?的效果,感興趣的朋友看看下面的示例
    2014-08-08
  • 淺談JS運(yùn)算符&&和|| 及其優(yōu)先級

    淺談JS運(yùn)算符&&和|| 及其優(yōu)先級

    下面小編就為大家?guī)硪黄獪\談JS運(yùn)算符&&和|| 及其優(yōu)先級。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-08-08
  • 使用js獲取地址欄中傳遞的值

    使用js獲取地址欄中傳遞的值

    本篇文章是對使用js獲取地址欄中傳遞的值實(shí)現(xiàn)代碼進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-07-07
  • 完美解決瀏覽器跨域的幾種方法(匯總)

    完美解決瀏覽器跨域的幾種方法(匯總)

    下面小編就為大家?guī)硪黄昝澜鉀Q瀏覽器跨域的幾種方法(匯總)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05

最新評論