Как сделать такой же запрос на Android, как этот код PHP?

Я новичок в PHP и Android.

Я делаю этот запрос, как это в PHP, который работает хорошо. «Имя» будет содержать переменную, например «upperLight», чтобы мы могли сравнить с кодом Android.

$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

socket_connect($sock,"192.168.2.104", 80);

$msg = 'a';
if (isset($_POST["name"])){
$msg= $_POST["name"] ;
}

socket_write($sock, $msg);

Я пытаюсь сделать то же самое в Android, как это, но это не работает.

        List<NameValuePair> pairs = new ArrayList<NameValuePair>();
pairs.add(new BasicNameValuePair("upperLight","1"));

HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost(URLTest);
post.setEntity(new UrlEncodedFormEntity(pairs));
HttpResponse execute = client.execute(post);

На другом конце (192.168.2.104) я проверяю слово «upperLight» в запросе.

РЕДАКТИРОВАТЬ: переменная URLTest содержит — «192.168.2.104:80»

0

Решение

  • попробуй это

    URL url = new URL("http://192.168.2.104:80");
    URLConnection con = url.openConnection();
    con.setDoOutput(true);
    OutputStreamWriter out = new OutputStreamWriter(con.getOutputStream());
    out.write( "upperLight" );
    out.flush();
    
0

Другие решения

Код PHP подключается к TCP-сокету через порт 80, а код Android подключается к HTTP-серверу.

Это две совершенно разные вещи. Если вам нужно перенести код PHP на Java / Android, вы должны начать с использования соответствующей библиотеки, которая Разъем.

0

По вопросам рекламы [email protected]