android - 我无法确定是什么导致我的应用出现此意外上传错误
问题描述
我对 android 开发相对较新,我一直在为一个非常简单的错误绞尽脑汁好几个小时。看,该应用程序昨天运行良好,在我对一些 XML 文件进行了一些更改并在我的模拟器上运行该应用程序后,我遇到了这个错误:
2019-09-10 14:13:19.533 6388-
6516/ E/Volley: [301]
BasicNetwork.performRequest: Unexpected response code 406 for
http://applybpojobs.com/widevalueappfiles/server/api/addvehicle.php
2019-09-10 14:13:21.573 1633-1656/system_process E/memtrack: Couldn't load
memtrack module
我已经在网上尝试了许多解决方案,但似乎无法解决我的问题。这是我的代码:
StringRequest stringRequest = new StringRequest(Request.Method.POST,
URL_ADD_VEHICLE,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.i(TAG, response.toString());
try {
JSONObject jsonObject = new JSONObject(response);
String Success = jsonObject.getString("success");
if (Success.equals("1")){
hideLoader();
Toast.makeText(Addvehicle.this,"Vehicle Added
Successfully",Toast.LENGTH_SHORT).show();
}else if (Success.equals("0")){
hideLoader();
Toast.makeText(Addvehicle.this,"Vehicle
Already Exist",Toast.LENGTH_SHORT).show();
}
}catch (JSONException e){
e.printStackTrace();
hideLoader();
Toast.makeText(Addvehicle.this,"Vehicle Added
Error"+e.toString(),Toast.LENGTH_SHORT).show();
}
}
},
new Response.ErrorListener(){
@Override
public void onErrorResponse(VolleyError error){
Toast.makeText(Addvehicle.this,"Vehicle Added
Error"+error.toString(),Toast.LENGTH_SHORT).show();
hideLoader();
}
})
我收到来自此 URL 的空白回复,我需要有关如何解决此问题的指导:
http://*********.php
无论出于何种原因,我的应用程序上的这个页面因为这个错误而停止工作。任何帮助,将不胜感激。同样,我基本上是 android 开发的新手,所以请理解像这样的简单错误会让我流鼻血。
这是我的服务器 php 代码:
<?php
require '../core/connect.php';
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$plate_number=$_POST['plate_number'];
$vin=$_POST['vin'];
$car_make=$_POST['car_make'];
$car_model=$_POST['car_model'];
$car_year=$_POST['car_year'];
$displacement=$_POST['displacement'];
$fuel_type=$_POST['fuel_type'];
$transmission=$_POST['transmission'];
$mileage=$_POST['mileage'];
$owner_name=$_POST['owner_name'];
$address=$_POST['address'];
$phone_number=$_POST['phone_number'];
$email_adress=$_POST['email_adress'];
$facebook=$_POST['facebook'];
$adddate = date("d/m/Y");
$photo = $_POST['photo'];
$id=uniqid();
$path = "vehicle_upload/$id.jpeg";
$finalpath = "*********.$path;
$sql1=mysqli_query($connect,"SELECT * FROM _addvehicle WHERE
PlateNumber='$plate_number'");
if (mysqli_num_rows($sql1) > 0) {
$result['success'] = "0";
$result['message'] = "error";
echo json_encode($result);
}else{
$sql = mysqli_query($connect, "INSERT IGNORE INTO
_addvehicle(PlateNumber, Vin, Make, Model, Year, Displacement, FuelType,
Transmission, Mileage, OwnerorCompany, HomeorCompanyAddress, ContactNumber,
EmailAddress, FacebookID, AddDate, vehicleImage)VALUES('$plate_number','$vin','$car_make','$car_model','$car_year','$displacement','$fuel_type','$transmission','$mileage','$owner_name','$address','$phone_number','$email_adress','$facebook','$adddate','$finalpath')");
if ($sql) {
if (file_put_contents($path, base64_decode($photo))) {
$result['success'] = "1";
$result['message'] = "success";
echo json_encode($result);
//mysqli_close($connect);
}
}
}
}
?>
解决方案
在 POST 请求中,您需要发送空 Hashmap 之类的参数,即 {"":""} 或者您需要尝试使用 https 而不是 http。
推荐阅读
- r - 使用列名 r 转换数据框
- dialogflow-es - DialogFlow 实现文本可以丰富吗?
- java - 访问子类的属性
- git - 从另一个 Azure DevOps 项目构建 Azure DevOps 多个分支
- c# - 从左到右的淡入淡出效果
- java - “Netbean 中的 Java EE 企业应用程序”。Servlet 和 JSP 无法连接到数据库
- scala - CORS配置play scala
- android - 将具有特定版本的本机 .so 库包含到 Android .aar 存档中
- django - Django 表单模板未将经过身份验证的用户名作为帖子作者
- javascript - Javascript合并并组合具有相同ID的对象