首页 > 解决方案 > POST 请求未发送数据 - 已修复

问题描述

我在 Android Studio 中编程的时间很短,我一直在尝试以几种不同的方式(Retrofit2、Volley、HttpClient ......)将 JSON 发送到我的 IIS 服务器,但自从我的 IIS APP 不使用后,我从未成功地做到这一点'不要在我的 Mysql BBDD 中引入新行。

此方法来自我的 IIS APP,它接收 Json,将其转换为 Object,然后对我的 BBDD 进行查询并引入新行。

 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 的端口出现了一些问题,所以我交换了它,现在它工作得很好。

标签: androidpostandroid-volleyretrofit2

解决方案


最后,它的工作!似乎我的 URL 的端口出现了一些问题,所以我将它换成了另一个,现在它工作得很好。


推荐阅读