Я некоторое время программировал в Android Studio и пытался отправить JSON на свой IIS Server несколькими различными способами (Retrofit2, Volley, HttpClient ...), и мне так и не удалось сделать это должным образом, так как мойIIS APP не вводит новую строку в моем Mysql BBDD.
Этот метод взят из моего IIS APP, который получает Json, преобразует его в объект, а затем выполняет запрос к моему BBDD и вводит новыйrow.
public String Post([FromBody] Empleado empleado)
{}
Этот метод работает нормально, потому что я попробовал его из консольного приложения IIS, и он отлично работает
Два примера того, что я делаю в Android Studio:
Залп:
public class MainActivity extends AppCompatActivity {
TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
enviarDatos();
}
public void enviarDatos(){
String url ="http://...myurl";
textView = (TextView)findViewById(R.id.text);
try {
RequestQueue requestQueue = Volley.newRequestQueue(this);
final org.json.JSONObject jsonBody = new org.json.JSONObject();
jsonBody.put("idTag",112353);
jsonBody.put("Longitud","1253");
jsonBody.put("Latitud","Test");
JsonObjectRequest request = new JsonObjectRequest
(Request.Method.POST, url, jsonBody, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
textView.setText(response.toString());
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
// TODO Auto-generated method stub
textView.setText(error.toString());
}
});
requestQueue.add(request);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET" />
Любая помощь будет благодарна, спасибо за ваши комментарии и извините за мой плохой английский
РедактироватьНаконец-то это работает!Похоже, порт моего URL создавал некоторые проблемы, поэтому я поменял его, и теперь он работает отлично.