Android 如何向mysever发送json帧我可以保留json并发送数据
我发布了用于从服务器读取数据的代码,但我不知道如何向服务器发送json帧 我想发送数据字符串Android 如何向mysever发送json帧我可以保留json并发送数据,android,json,post,Android,Json,Post,我发布了用于从服务器读取数据的代码,但我不知道如何向服务器发送json帧 我想发送数据字符串 try { URL url = new URL(params[0]); con = (HttpURLConnection)url.openConnection(); con.connect(); InputStream in = con.getInputStream(); red = new BufferedReader(new InputStreamReade
try {
URL url = new URL(params[0]);
con = (HttpURLConnection)url.openConnection();
con.connect();
InputStream in = con.getInputStream();
red = new BufferedReader(new InputStreamReader(in));
String line = "";
buffer = new StringBuffer();
while ((line=red.readLine())!= null){
buffer.append(line);
}
return buffer.toString();
我假设您正试图
将一些JSON
对象发布到URL
在对连接使用HttpURLConnection
时,如果您确实在该URL
上发布内容,则可以将其实例设置为这是一个POST
头请求
在这之后,您可以使用DataOutputStream
实例来编写(POST
)您的JSON
数据,如下所示
我已经写了一段代码,你可以检查,代码也可以在
私有类MyTask扩展了AsyncTask{
@凌驾
受保护的Void doInBackground(Void…参数){
试一试{
/**
*请用您自己的url字符串更改此url字符串,您希望在此处发布json数据
*/
URL=新URL(“”);
HttpURLConnection HttpURLConnection=(HttpURLConnection)url.openConnection();
httpURLConnection.setDoOutput(true);
//当你发帖时,一定要确保你分配了合适的标题
//在这种情况下,请发送邮件。
httpURLConnection.setRequestMethod(“POST”);
httpURLConnection.connect();
//这样,您就可以创建要发送的JOSN对象
JsonObject JsonObject=新的JsonObject();
jsonObject.addProperty(“电子邮件”dddd@gmail.com“”;//伪数据
addProperty(“密码”、“密码”);//伪数据
//这就是您将如何写入URL的方式
DataOutputStream wr=新的DataOutputStream(httpURLConnection.getOutputStream());
writeBytes(jsonObject.toString());
wr.flush();
wr.close();
Log.d(“TAG”,“”+IOUtils.toString(httpURLConnection.getInputStream());
}捕获(例外e){
e、 printStackTrace();
}
返回null;
}
}
这段代码使用apache common io从输入流中获取字符串,如果您愿意,可以进行更改。@ullaaskrishnan,如果您愿意接受答案,那就太好了:)
private class MyTask extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... params) {
try {
/**
* Kindly change this url string with your own, where you want to post your json data
*/
URL url = new URL("");
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setDoOutput(true);
// when you are posting do make sure you assign appropriate header
// In this case POST.
httpURLConnection.setRequestMethod("POST");
httpURLConnection.connect();
// like this you can create your JOSN object which you want to send
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("email", "dddd@gmail.com"); //dummy data
jsonObject.addProperty("password", "password");// dummy data
// And this is how you will write to the URL
DataOutputStream wr = new DataOutputStream(httpURLConnection.getOutputStream());
wr.writeBytes(jsonObject.toString());
wr.flush();
wr.close();
Log.d("TAG", "" + IOUtils.toString(httpURLConnection.getInputStream()));
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}