1

JSON データ ファイルがデータベースの結果セットから取得され、その結果セットが空の場合、不正な JSON 文字列が原因でクラッシュするのではなく、エラー メッセージを表示するように OFC2 に指示するにはどうすればよいですか?

4

2 に答える 2

0

サーバーへのアクセスレベル、JavaScriptやサーバー側プラットフォームの知識に応じて、いくつかの解決策が可能です。

データベースへのアクセス あり表示しているデータの種類によっては、空のセットを返すクエリのダミーレコードを追加できる場合があります。クエリ定義にアクセスできる場合は、DBクエリで空のセットを確認できます。たとえば、MS SQL Serverを使用している場合は、いくつかのT-SQLステートメントを使用して条件を確認できます。

サーバーへ のアクセスありデータセットを生成するサーバー側スクリプトにアクセスできる場合は、OFC2が正しく処理するデフォルト値を返す条件を追加します。

別のサーバーまたはサーバーの場所 にアクセスできる特定のスクリプトにアクセスできない場合は、元のスクリプトを照会して空の結果をデフォルト値に置き換える新しいスクリプトを別の場所に作成することを検討してください。

クライアント側のみ JavaScriptopen_flash_chart_data関数(チュートリアルを参照)を追加して、空のデータセットを置き換えることができます。OFC2は、その機能をデータソースとして使用できます。

お役に立てれば。

于 2010-11-16T23:57:34.693 に答える
0

この質問に javascript と actionscript-3 のタグを追加すると、現在よりも多くのビューと有用な応答が得られ、私が提供しているよりも正確な詳細が得られます。問題の原因であり、防御したい実際の JSON 文字列を投稿してください。そうすれば、 JSON.decode() が発生する前のある時点で、JSON データとしてではなく、文字列として扱う正規表現を提案してキャッチすることができます。

さらに詳細に:

2か所でキャッチできます。1 つのルートは、OFC2 への JavaScript インターフェイスを使用するように切り替え、クライアント側の JavaScript を使用して不良文字列を検出することです。これにより、JSON 文字列のクライアント側を変更できます。そのアプローチについては、 http://teethgrinder.co.uk/open-flash-chart-2/tutorial-5.phpを参照してください。1 つの欠点は、これが機能するためにクライアントで JavaScript が有効になっている必要があることです。

または、OFC2 は LGPL であるため、ユーザーまたはアクション スクリプトの開発者は、OFC2 ソース コードに飛び込んで同じことを行うことができます。私はアクション スクリプトの開発者ではないので、アクション スクリプトの開発者からの返信を確実に得られるようにした方がよいでしょう。

主なことは、この 2 つのタグをこの質問に追加することです。賞金が 500 の質問に対して、22 回のビューは低すぎます。これがお役に立てば幸いです。

于 2010-11-15T15:24:55.583 に答える