0

私は非常に長い文字列、90,860文字を取り、これをPHPページに渡してデータベースに挿入するメソッドを持っています。PHPの投稿のサイズに最大約8MBの制限はないことを読みました。この長さの文字列は問題ないと思います。

    msg = URLEncoder.encode(stringToEncode.toString(),"UTF-8"); 

        DefaultHttpClient httpclient = new DefaultHttpClient();
        HttpPost httpPost = new HttpPost("http://mysite.com/insert.php?data="+msg);
        HttpResponse response1 = httpclient.execute(httpPost);

短いプレーンストリングを挿入できるので、これが機能することはわかっています。

私のPHPページでは、次のような投稿データを取得します。

    $data = $_GET['data'];

そしてそれを挿入します。投稿メッセージをデコードするためにphpを追加する必要がありますか?PHPによって自動的に実行される必要があることを読みました。

問題は、長い文字列では500エラーが発生するか、文字列を取得してブラウザに配置すると、使用できないページが表示されることです。

前もって感謝します!

4

2 に答える 2

3

Javaプログラムでは、特に長い場合はURLでデータを渡さないでください。たとえば、この質問Postを参照して、パラメータを適切に渡す方法をコーディングしてください。

PHP側からは、$data = $_POST['data'];

于 2013-02-12T16:44:25.273 に答える
1

制限要因は、サーバーが受け入れることをいとわないURLの最大許容長になります。すべてのサーバーがサポートする必要のある最小値があるかどうかは思い出せませんが、しばらく前に行ったテストでは、サーバーの種類に応じて、URLの長さの制限は通常2kから10k文字であることが示されました。これは、PaulDixonの広範な回答によって確認されているようです。この質問

この制限を回避するには、マルチパート投稿を使用します

于 2013-02-12T16:30:21.310 に答える