Active Report検証テキストを修正します。「nullにできないパラメータにnull値を指定します。」
4914 ワード
回転:
http://gcdn.gcpowertools.com.cn/showtopic-13759.html
Active Report公式サイト:
http://www.gcpowertools.com.cn/products/activereports_overview.htm
現在の問題:
実行結果:
QQスクリーンショット20140911171128.png(14.68 K)
2014-9-12 11:02:28
コードは王として、直接お届けします。
コードの意図は簡単です。
現在の問題は「nullのパラメータにnull値を指定できない」という出力はバックグラウンドサービスから来ています。バックグラウンドサービスは改竄できません。
QQスクリーンショット201409121022942.png(59.20 K)
2014-9-12 11:02:28
文字を改竄するにはフロントでしか操作できません。
先端解決の原理:
キャプチャAjax要求->デフォルト要求の終了->手動でAjaxを呼び出します。
解決策:
1.ARを分析してJSコードを生成する
2.Jqueryライブラリのソースコードを分析する(最初はAjaxCopleteイベントで直接JSONに戻ることを想定していたが、後にAjaxCopleteイベントがsuccessで呼び出されたことを発見したので、修正しても意味がない。これはJqueryがこのような悪意を防ぐ行為かもしれない)
基本的には、バックグラウンドの「ExtededErroInfo」がデータに戻らない場合、デフォルトの検証文字列を実行します(デフォルトの検証ARは変更できます)。
QQスクリーンショット20140912105601.png(74.01 K)
2014-9-12 11:02:28
人間化された文字に修正しましたが、このような波乱が予想できませんでした。AR製品チームの人員がもっと厳しくなることを望んでいます。後から利用できるように。
http://gcdn.gcpowertools.com.cn/showtopic-13759.html
Active Report公式サイト:
http://www.gcpowertools.com.cn/products/activereports_overview.htm
現在の問題:
実行結果:
QQスクリーンショット20140911171128.png(14.68 K)
2014-9-12 11:02:28
コードは王として、直接お届けします。
$(document).ajaxSend(function (e, xhr, o) {
// RunReport
if (o.url.indexOf('/ActiveReports.ReportService.asmx/RunReport') > 0) {
xhr.abort(); // AR
$.ajax({
type: "POST",
url: o.url,
global: false, // ajaxSend ,
data: o.data,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
var msgStr = JSON.stringify(msg);
msgStr = msgStr.replace(/ null null /g, ' ');
msg = JSON.parse(msgStr);
o.success(msg);
},
error: o.error
});
}
});
コードの意図は簡単です。
現在の問題は「nullのパラメータにnull値を指定できない」という出力はバックグラウンドサービスから来ています。バックグラウンドサービスは改竄できません。
QQスクリーンショット201409121022942.png(59.20 K)
2014-9-12 11:02:28
文字を改竄するにはフロントでしか操作できません。
先端解決の原理:
キャプチャAjax要求->デフォルト要求の終了->手動でAjaxを呼び出します。
解決策:
1.ARを分析してJSコードを生成する
2.Jqueryライブラリのソースコードを分析する(最初はAjaxCopleteイベントで直接JSONに戻ることを想定していたが、後にAjaxCopleteイベントがsuccessで呼び出されたことを発見したので、修正しても意味がない。これはJqueryがこのような悪意を防ぐ行為かもしれない)
基本的には、バックグラウンドの「ExtededErroInfo」がデータに戻らない場合、デフォルトの検証文字列を実行します(デフォルトの検証ARは変更できます)。
QQスクリーンショット20140912105601.png(74.01 K)
2014-9-12 11:02:28
人間化された文字に修正しましたが、このような波乱が予想できませんでした。AR製品チームの人員がもっと厳しくなることを望んでいます。後から利用できるように。