|
てるりあ |
07/12/13 20:38 |
|
スレッドや、レスポンスに記述を行った際に、エラーが出る場合があります。
この時、文字の数が規定値より多い場合があります。
スレッドとレスポンスの文字数制限をここに記述します。
スレッド上限 9993文字
レスポンス上限 700文字
上記の上限はあくまでも、通常入力による最大値です。
実際に入力できる文字数は、条件により異なります。
現実的には、上限の約半分の文字数しか入力できないと思ってください。
以上で簡単な説明を終えます。
※200/12/12時点の仕様での検証
________________________________________________________________
以下、検証した細かいデータを記載します。
下記の検証は、通常の入力画面より入力できる範囲での検証です。
HTMLなどのコピー・ペーストした場合を除きます。
スレッド検証
1.文字だけを羅列した場合
例(123456・・・)
最大入力可能文字数 9993文字
半角と全角の違いなし。
2.一文字+改行の場合
例 1(改行)
2(改行)
3(改行)
・・・
最大入力可能文字数 1997文字 + 改行なし(1997行目)
(改行を文字として数えていない)
半角と全角の違いなし。
3.改行のみ
例 (改行)
(改行)
(改行)
・・・
最大入力可能行数 1332行
※何故か1332行入力しても666行しか表示されない。謎の減少が起こる。
条件1と2より、文字数制限と行数制限の二つで規制されていると考えたが、3により覆る。
ブラウザでソースコードにて確認。
1.文字だけの場合 → 入力した文字
2.文字+改行 → 文字と<BR>タグ
3.改行だけ →  <BR>タグ
HTMLソースになった場合に、ケース2は文字数+タグの4文字。
ケース3は、タグなどの10文字になっていた。
追加検証を行う。
4.文字だけ入力。ただし一文字だけ染色ボタンで赤にする。
入力可能文字数 9971文字になる。
入力画面にて設定できる他の色でも同様の結果。(紺・緑)
HTMLにてチェック。染色1文字が29文字になる。
<font color="#d05d18">A</font>
HTMLにおける総文字数10001文字。
5.文字だけ入力。ただし一文字だけ強調ボタンで強調する。
入力可能文字数 9981文字
HTMLにてチェック。強調1文字が18文字になる。
<strong>A</strong>
HTMLにおける総文字数9999文字。
6.文字だけ入力。ただし一文字だけ下線ボタンで下線する。
入力可能文字数 9987文字
HTMLにてチェック。下線1文字が8文字になる。
<u>A</u>
HTMLにおける総文字数9994文字。
ケース4・5・6より。
システムが保持しているデータと、ブラウザで表示されるH TMLデータは同じではないと予測。
何らかのタグの圧縮・変換が行われている可能性があると推測。
通常入力時の最大文字数との差異計算
着色 9993 - 9971 = 22
強調 9993 - 9981 = 12
下線 9993 - 9987 = 6
最大HTML文字との差異
着色 9993 - 10001 = -8
強調 9993 - 9999 = -6
下線 9993 - 9994 = -1
これらを踏まえ、再度ケース1・2・3のHTML文字数をカウント。
ケース1 9993文字
ケース2 9985文字
ケース3 6660文字
現状の考察
手順1.入力画面にて入力
手順2.クライアントもしくはサーバーにて、入力内容がチェックされ変換。(変換後、チェックの可能性も有り)
手順3.変換されたデータが、サーバーに保存。
手順4.ブラウザにてサーバーからデーター参照する。妥当なHTMLに変換されて表示。
変換の仕様が、私には予測不能。
結果、純粋な文字入力だけならば、9993文字まで入力画面にて可能であるが、現実的には改行や装飾などをする。
実質、装飾をするタイプの人ならば3000~5000文字が上限になってくると思われる。
レスポンスに関する検証。
7.文字だけの場合。(ケース1と類義)
入力可能文字数 700文字
全角半角変化なし。
8.1文字と改行の場合。(ケース2と類義)
入力可能文字数 234文字 + 改行なし (234行)
全角半角変化なし。
9.改行だけの場合。(ケース3と類義?)
入力可能行数 351行
ケース3と違い、ブラウザで確認すると、HTMLソースは<BR>タグを使用していた。
また、入力した行が減ることも無かった。
結果、スレッドと完全に同じ処理をしていない様子。
また、現実的利用範囲は、300~500文字と予測。
以上
追記。スレッド・レスポンス・デフォルトのAI記憶領域は別枠。