java - 使用 Volley 的 Android 注册屏幕
问题描述
我尝试使用 Volley for android(学校项目)实现注册屏幕。到目前为止,我完成了代码,但寄存器不起作用。我尝试调试它并注意到服务器给了我错误 500 一个内部服务器错误。在我的用户界面上,它给了我一个 com.android.volley.server。
我仔细检查了我的网址和代码,但一切似乎都很好。该网址很好,因为使用相同的网址我可以通过邮递员提出请求。和代码我找不到任何错误,因为我是 android 和 volley 的新手。也许有人可以给我一个指针。我的学校给了我一个 google.json 文件,但我不知道我是否可以在这里发布。
这是我提出请求的方法:
@Headers("Content-Type: application/json")
public void registerData() {
userName = Username.getText().toString();
password = Password.getText().toString().trim();
StringRequest request = new StringRequest(Request.Method.POST, BASE_URL, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try{
JSONObject jsonobj = new JSONObject(response);
String MsgType = jsonobj.getString("MsgType");
if(MsgType.equals(1)){
Toast.makeText(registerActivity.this, "Geklappt",Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
e.printStackTrace();
Toast.makeText(registerActivity.this, "Fail",Toast.LENGTH_LONG).show();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(registerActivity.this, "Fail: " + error.toString(),Toast.LENGTH_LONG).show();
error.printStackTrace();
}
})
{
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String,String> params = new HashMap<>();
params.put("Username", userName);
params.put("Password", password);
return params;
}
};
RequestQueue queue = Volley.newRequestQueue(this);
queue.add(request);
}
这是我可以得到的 serverResposne (json)
{
"MsgType": 1,
"Info": "Benutzer erfolgreich angelegt",
"Data": null
}
Parameters which the server accepts (tested postman)
{"Username":"Fds",
"Password":"Gdg"}
这是所要求的错误
E/SpannableStringBuilder: SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
E/SpannableStringBuilder: SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
E/SpannableStringBuilder: SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
D/HwAutofillHelper: recordCurrentInfo:0
inputType = 131073
D/mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
W/libEGL: EGLNativeWindowType 0x7a31358250 disconnect failed
V/AudioManager: querySoundEffectsEnabled...
D/NetworkSecurityConfig: No Network Security Config specified, using platform default
E/Volley: [38804] BasicNetwork.performRequest: Unexpected response code 500 for http://palaver.se.paluno.uni-due.de/api/user/register
D/: [ZeroHung]zrhung_send_event: wp = 257, ret = 0
D/: [ZeroHung]zrhung_send_event: wp = 258, ret = 0
D/: [ZeroHung]zrhung_send_event: wp = 260, ret = 0
Disconnected from the target VM, address: 'localhost:8600', transport: 'socket'
解决方案
推荐阅读
- reactjs - 如何在 react-window 中的 VariableSizeList 中获取内容感知的非重叠行?
- flutter - Flutter Engine 和 Dart VM 是什么关系?
- css - React Material UI Column width 属性不展开
- javascript - 使用只有一个数字元素的 Array 构造函数创建一个数组
- java - 如何从 https://www.jumia.ma/pc-portables/ 抓取产品数据
- visual-studio-code - 如何在不发布的情况下将自定义颜色主题应用于 Visual Studio 代码
- asp.net - asp:ScriptManager webforms项目中未定义的CDN路径
- php - 我不确定如何使用变量路由?
- sql - 如何不将 where 子句应用于窗口函数
- python - 在使用这种多对多关系之前,django 使用 mixin 需要有一个字段“id”的值