有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如何通过java中的post将信息发送到php页面?

我在通过java应用程序将数据发送到php页面时遇到问题。基本上,我有一个php页面,它通过POST方法接收数据,并用java创建了一个类,通过POST发送数据。问题是,在java中,我没有插入php页面中请求的标识符。如您所见,我通过filter_input (INPUT_POST, "user")代码片段在php中获取页面上的值,但是在java应用程序中,我没有在我想要发送的信息中输入这个“用户”标识符。因此,php页面无法“拾取”java应用程序发送的值。有人知道如何解决这个问题吗?提前非常感谢
第页PHP:

<?php

    require_once './vendor/autoload.php';
    $controller = new App\CWS\Controller();

    if($_SERVER['REQUEST_METHOD'] == "POST"){
        $controller->registerUser(filter_input(INPUT_POST, "user"));
    }

?>

类负责在Java应用程序中连接和发送数据:

public class WebClient {
    public String post(String json) {
        try {
            URL url = new URL("http://localhost//CWS//cadastrar_usuario.php");
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setRequestMethod("POST");
            connection.setRequestProperty("Content-type", "application/json");
            connection.setRequestProperty("Accept", "application/json");

            connection.setDoOutput(true);

            PrintStream output = new PrintStream(connection.getOutputStream());
            output.println(json);

            connection.connect();

            Scanner scanner = new Scanner(connection.getInputStream());
            String resposta = scanner.next();
            return resposta;
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return null;
    }
}

共 (1) 个答案

  1. # 1 楼答案

            PrintStream output = new PrintStream(connection.getOutputStream());
            output.println(json);
    

    这样,您就可以将数据作为JSON编码的文本发送到服务器。 此时JSON字符串中的任何内容都将被发送。 如果您没有将“user”的数据放入JSON中,则必须在发送之前将其放入