android - 无法使用 WebServices API 将数据发布到 Android 中的服务器

标签 android mysql api post

我想将数据发布到服务器,但我得到了

Volley: [1726] BasicNetwork.performRequest: Unexpected response code 415 for http://192.158.20.43:8080/Api/employee/create" error.

public class RegisterTextActivity extends AppCompatActivity {
    EditText emailBox, passwordBox,firstName,lastName;
    Button registerButton;
    TextView loginLink;
    String URL = "http://192.158.20.43:8080/Api/employee/create";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register_text);

        firstName=(EditText)findViewById(R.id.firstname);
        lastName=(EditText)findViewById(R.id.lastname);
        emailBox = (EditText)findViewById(R.id.emailBox);
        passwordBox = (EditText)findViewById(R.id.passwordBox);
        registerButton = (Button)findViewById(R.id.registerButton);
        loginLink = (TextView)findViewById(R.id.loginLink);

        registerButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                StringRequest request = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>(){
                    @Override
                    public void onResponse(String s) {
                        if(s.equals("true")){
                            Toast.makeText(RegisterTextActivity.this, "Registration Successful", Toast.LENGTH_LONG).show();
                        }
                        else{
                            Toast.makeText(RegisterTextActivity.this, "Can't Register", Toast.LENGTH_LONG).show();
                        }
                    }
                },new Response.ErrorListener(){

                    @Override
                    public void onErrorResponse(VolleyError volleyError) {
                        volleyError.printStackTrace();
                        Toast.makeText(RegisterTextActivity.this, "Some error occurred -> "+volleyError, Toast.LENGTH_LONG).show();

                    }
                }) {
                    @Override
                    public String getBodyContentType() {
                        return "application/json;charset=utf-8";
                    }
                    @Override
                    protected Map<String, String> getParams() throws AuthFailureError {
                        Map<String, String> parameters = new HashMap<String, String>();

                        parameters.put("firstname",firstName.getText().toString().trim());
                        parameters.put("lastname",lastName.getText().toString().trim());
                        parameters.put("email", emailBox.getText().toString().trim());
                        parameters.put("phone", passwordBox.getText().toString().trim());
                        return parameters;
                    }

                };

                RequestQueue rQueue = Volley.newRequestQueue(RegisterTextActivity.this);
               /
                rQueue.add(request);
            }
        });

        loginLink.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(RegisterTextActivity.this, LoginTestActivity.class));
            }
        });
    }
}

API 在 POSTMAN 中工作正常,但在此处无法正常工作。

最佳答案

尝试更改您的内容类型

application/json;charset=utf-8

application/json

关于android - 无法使用 WebServices API 将数据发布到 Android 中的服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45205059/

相关文章:

mysql - 根据第一个 SQL select 语句的结果进行选择

MySQL - 组合多个查询+计数

api - 我可以使用 Bitbucket API 获取存储库的最新提交吗?

android - 从 Android 设备流式传输到 shoutcast(上行)

java - Android Studio : Can't open file after app restarts

android - 我的广播接收器没有启动

mysql - 如何使用 Node-RED 将 Prosys 模拟服务器数据保存到 MySQL 数据库?

java - Android 中出现奇怪的 "java.io.IOException: EOF"错误

jquery - getJSON 从此 API 返回 XML

javascript - 有没有办法改变http请求、响应位置?