Ajax の応答を通じてバックグラウンドでデータを渡す問題を分析する

小云云
リリース: 2023-03-18 11:16:01
オリジナル
1315 人が閲覧しました

Ajax でレスポンスを通じてバックグラウンドでデータを渡すときに例外が発生します。それを解決するにはどうすればよいですか?この記事では、Ajax でのバックグラウンドでの応答によるデータ送信の問題の分析を紹介します。必要な方は参考にしていただければ幸いです。

これはjsコードです:

var System = { 
  getHttpRequest: function(url, callback, options) { 
    if (url.length < 0) return; 
    var option = { 
      url: url, 
      type: "get", 
      dataType: "json", 
      cache: false, 
      timeout: 30000, 
      beforeSend: function(XHR) { 
      }, 
      complete: function(XHR, textStatus) { 
        XHR.abort(); 
      }, 
      error: function(XMLHttpRequest, textStatus, errorThrown) { 
        //alert("网络连接不通,请稍后再试!"); 
      }, 
      success: function(data) { 
        callback(data, options); 
      } 
    }; 
    if ( !! options) { 
      option = $.extend(option, options); 
    } 
    $.ajax(option); 
  } 
};
ログイン後にコピー

コールバック関数successを通じてデータを取得したい場合、最初はバックグラウンドで直接json文字列を返します。結果は例外となり、メソッドは定義されていません。確認したところ、response.getWriter().write()メソッドを通じてデータを書き込む必要があり、データは正常に取得できました。バックグラウンド コードは次のとおりです:

public String getRejectReason() throws Exception{ 
    String rowId = getParameterAndPut("rowId",null,0).toString(); 
    String jsonData = ""; 
    if (StringUtils.isNotEmpty(rowId)) { 
      jsonData = newOwnerInfoService.getRejectReasonJsonData(rowId); 
    } 
    this.getResponse().setCharacterEncoding("utf-8"); 
    this.getResponse().getWriter().write(jsonData); 
    return null; 
}
ログイン後にコピー

学習しましたか?急いで試してみてください。

関連する推奨事項:

2 つのオブジェクト Request と Response の使用について説明します

AngularJS の ng Http リクエストとレスポンスの形式変換メソッド

PHP と AJAX のレスポンス XML の例

以上がAjax の応答を通じてバックグラウンドでデータを渡す問題を分析するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート