gpt4 book ai didi

java - 用java发送数据到php页面

转载 作者:行者123 更新时间:2023-11-30 04:54:50 24 4
gpt4 key购买 nike

我正在尝试将 POST 数据从 java 发送到 PHP 页面。但是它不起作用。无论我在 php 页面中回显什么,都可以正常工作,但是当我发送数据时,它会给出-“未定义索引”可能是什么问题呢 ?这是我的 java 文件。

import java.net.*;
import java.io.*;

class Main {
public static void main(String args[]) throws IOException {

URL url = new URL("http://localhost/CD/user/test");
String result = "";
String data = "fName=" + URLEncoder.encode("Atli", "UTF-8");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
try {

connection.setDoInput(true);
connection.setDoOutput(true);
connection.setUseCaches(false);
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");

// Send the POST data
DataOutputStream dataOut = new DataOutputStream(
connection.getOutputStream());
dataOut.writeBytes(data);
dataOut.flush();
dataOut.close();

BufferedReader in = new BufferedReader(new InputStreamReader(
url.openStream()));

String g;
while ((g = in.readLine()) != null) {
result += g;
}
in.close();

} finally {
connection.disconnect();
System.out.println(result);
}

}
}

这是我的 php Controller :

public function test(){

$test=$_POST['fName'];
$all="This is a ";
$all=$all." ".$test;
echo $all;



}

当我刚刚发送一个 url 请求时,我得到的输出为“This is a”。所以它正在连接到 url 和所有内容,但在发送数据时,它不起作用。请帮忙!谢谢。

最佳答案

您正在使用不同的流进行发布和获取。您的邮政编码工作正常。

替换:

 BufferedReader in = new BufferedReader(new InputStreamReader(
url.openStream())); // different stream

DataInputStream in = new DataInputStream (connection.getInputStream ()); // same connection

它应该可以正常工作。

//编辑:此处没有任何已弃用的方法:

    BufferedReader in = null;
try {
String line;
in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
while ((line = in.readLine()) != null) {
result += line;
}
} finally {
if (in != null) {
in.close();
}
}

关于java - 用java发送数据到php页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8867246/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com