Balckberry モバイル アプリケーションに取り組んでいます。java.io.OutputStream
いくつかのデータを取得し、オブジェクトを使用してサーバー アプリケーションに投稿しjavax.microedition.io.Connection
ます。「Content-Type」プロパティを設定してConnection
いますが、サーバー側で正しいエンコードされた文字列を取得できません
その点に注意してください:
- Posterを使用して確認したように、サーバーは
UTF-8
エンコードされた文字列で正常に動作します OutputStream
XML は、デバッグ モードで確認できるように、書き込む前にクライアント側で正しくエンコードされています。
誰でもグリッチを見つけることができます 以下はコードです。
// Client side code
// xml is String xml and is correctly encoded, I can see Arabic or Chinese character it in debug mode
byte[] requestByte = xml.getBytes();
// compress request bytes array
// initialize connection
// set connection properties
con.setRequestMethod(HttpConnection.POST);
con.setRequestProperty("User-Agent", "Profile/MIDP-2.0 Configuration/CLDC-1.0");
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
con.setRequestProperty("Content-Encoding", "UTF-8");
os = con.openOutputStream();
InputStream in = new ByteArrayInputStream(requestByte);
byte[] buffer = new byte[4096];
int bytesRead = 0;
while ((bytesRead = in.read(buffer)) > 0) {
os.write(buffer, 0, bytesRead);
}