Android 来自cURL请求的异步任务中的HTTP请求
我构建了一个web服务,它将接收一个图像作为输入,并用JSON结果进行响应 卷曲请求:Android 来自cURL请求的异步任务中的HTTP请求,android,curl,android-asynctask,httprequest,Android,Curl,Android Asynctask,Httprequest,我构建了一个web服务,它将接收一个图像作为输入,并用JSON结果进行响应 卷曲请求: curl -X POST -F "file=@images/Sample1.jpg" http://192.168.0.101:5000/Img_Emotion/ 输出: { "angry": 0, "disgusted": 0, "fearful": 0, "happy": 99.97, "sad": 0, "surprised": 0, "neu
curl -X POST -F "file=@images/Sample1.jpg" http://192.168.0.101:5000/Img_Emotion/
输出:
{
"angry": 0,
"disgusted": 0,
"fearful": 0,
"happy": 99.97,
"sad": 0,
"surprised": 0,
"neutral": 0.03
}
现在我正在尝试构建一个android应用程序,它将使用HTTP请求通过AsyncTask
从这个API获取响应
到目前为止,我已经为GET
方法做了类似的事情,没有发布任何数据
@Override
protected Void doInBackground(String... params) {
try {
// This is getting the url from the string we passed in
URL url = new URL(params[0]);
// Create the urlConnection
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setDoInput(true);
urlConnection.setRequestMethod("GET");
int statusCode = urlConnection.getResponseCode();
if (statusCode == 200) {
InputStream inputStream = new BufferedInputStream(urlConnection.getInputStream());
String response = convertInputStreamToString(inputStream);
Log.e("result",response);
}
} catch (Exception e) {
Log.d("error", e.getLocalizedMessage());
}
return null;
}
private String convertInputStreamToString(InputStream inputStream) {
BufferedReader bufferedReader = new BufferedReader( new InputStreamReader(inputStream));
StringBuilder sb = new StringBuilder();
String line;
try {
while((line = bufferedReader.readLine()) != null) {
sb.append(line);
}
} catch (IOException e) {
e.printStackTrace();
}
return sb.toString();
}
我需要通过从相机或本地存储向API发布一个图像,然后返回响应 你在安卓系统中挖掘过谷歌上传图像到服务器吗?@Piyus我不确定上传图像是否适用于我的API,因为请求只是获取图像,将其转换为数据流并将其传递到API,在API中直接处理,而不是保存在任何地方。试试这个