Temel işlevleri olan bir çevrimiçi DB'ye bağlandığım ve uyguladığım (al, ekle, güncelleştir, güncelleştir) JSON ve "http yolu" kullanarak yaptım ve her şey iyi çalışıyor, şimdi istiyorum kodumu volley'e taşıyorum ancak post yöntemleriyle ilgili bazı problemlerim var.POST yöntemini Volley'e dönüştürme
Bu benim eski kod, yeni olsun yöntemlerine
case "3"://insert
try {
HttpURLConnection urlConn;
DataOutputStream printout;
DataInputStream input;
miurl = new URL(cadena);
urlConn = (HttpURLConnection) miurl.openConnection();
urlConn.setDoInput(true);
urlConn.setDoOutput(true);
urlConn.setUseCaches(false);
urlConn.setRequestProperty("Content-Type", "application/json");
urlConn.setRequestProperty("Accept", "application/json");
urlConn.connect();
JSONObject jsonParam = new JSONObject();
jsonParam.put("name", params[2]);
jsonParam.put("email",params[3]);
OutputStream os = urlConn.getOutputStream();
BufferedWriter writer = new BufferedWriter(
new OutputStreamWriter(os, "UTF-8"));
writer.write(jsonParam.toString());
writer.flush();
writer.close();
int respuesta = urlConn.getResponseCode();
StringBuilder result = new StringBuilder();
if (respuesta == HttpURLConnection.HTTP_OK) {
String line;
BufferedReader br=new BufferedReader(new InputStreamReader(urlConn.getInputStream()));
while ((line=br.readLine()) != null) {
result.append(line);
}
JSONObject respuestaJSON = new JSONObject(result.toString());
String resultJSON = respuestaJSON.getString("status");
if (resultJSON == "1") {
answer = "Ok!";
} else if (resultJSON == "2") {
answer = "Error";
}
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
return answer;
...
@Override
protected void onPostExecute(String s) {
tv_answer.setText(s);
//super.onPostExecute(s);
}
ve voleybol
case R.id.btn_insert:
url = INSERT;
StringRequest postRequest = new StringRequest(Request.Method.POST, url,
new Response.Listener<String>()
{
@Override
public void onResponse(String response) {
tv_answer.setText(response);
}
},
new Response.ErrorListener()
{
@Override
public void onErrorResponse(VolleyError error) {
tv_answer.setText("That didn't work!");
}
}
) {
@Override
protected Map<String, String> getParams()
{
Map<String, String> params = new HashMap<String, String>();
headers.put("name", et_name.getText().toString());
headers.put("email", et_email.getText().toString());
return params;
}
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
Map<String,String> params = new HashMap<String, String>();
params.put("Content-Type", "application/json");
params.put("Accept", "application/json");
return params;
}
};
queue.add(postRequest);
break;
kullanmaya çalışıyor yenisi olarak çalışıyor edilir Ve ben sadece bana söyleyen bir SQL önemli hata olsun Bu sütunlar boş olamaz, başka bir deyişle, işlevim iki boş anahtarlar gönderiyor, ben uzman değilim, ben öğreticilerden biraz yardım alarak ilk kısmı yaptım, şimdi biraz kayboldum