0 レビュー
1 回答
java-AndroidからPHPサーバーに変数を送信する
私は最も苦労しています。Androidアプリケーションがサーバーに文字列を送信することを望んでいます。サーバーは、PHPで送信された文字列に基づいて関数を選択します。関数が実行されると、JSONObjectが返されます。非推奨のメソッドは使用したくありません。 STRINGをサーバーに送信して、PHPで適切な関数を解析して使用し、JSONをAndroidアプリケーションに返送するように実装しようとしています。誰かがアンドロイド側からいくつかのコードを見せてもらえますか?
つまり、私が探しているのは、Androidコードを使用してSTRINGをサーバーに送信し、サーバーからの応答を読み取ることです。これはJSONになります。
わからない
0
レビュー
答え :
解決策:
Androidの場合、HTTP接続URLを使用できます。ここに例を示しますPOSTを使用してHttpURLConnectionにパラメータを追加する方法
URL url = new URL("http://yoururl.com");
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
conn.setReadTimeout(10000);
conn.setConnectTimeout(15000);
conn.setRequestMethod("POST");
conn.setDoInput(true);
conn.setDoOutput(true);
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("name", "Chatura"));
OutputStream os = conn.getOutputStream();
BufferedWriter writer = new BufferedWriter(
new OutputStreamWriter(os, "UTF-8"));
writer.write(getQuery(params));
writer.flush();
writer.close();
os.close();
conn.connect();
..
private String getQuery(List<NameValuePair> params) throws UnsupportedEncodingException
{
StringBuilder result = new StringBuilder();
boolean first = true;
for (NameValuePair pair : params)
{
if (first)
first = false;
else
result.append("&");
result.append(URLEncoder.encode(pair.getName(), "UTF-8"));
result.append("=");
result.append(URLEncoder.encode(pair.getValue(), "UTF-8"));
}
return result.toString();
}
PHPの場合、以下のようにAndridから送信される投稿リクエストを受け入れるだけです
<?php
echo '{ "name" = "Hello ' . htmlspecialchars($_POST["name"]) . '"}';
?>
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。