- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想从数据库中获取用户的信息并显示出来,但我一直收到这个错误:
BasicNetwork.performRequest: Unexpected response code 404
这是我的javacode:
加载方式:
public void loadUserProfile() {
Response.Listener<String> responseListener = new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject jsonResponse = new JSONObject(response);
idTV.setText(jsonResponse.getString("_id"));
nameTV.setText(jsonResponse.getString("name"));
firstNameTV.setText(jsonResponse.getString("firstName"));
emailTV.setText(jsonResponse.getString("email"));
sexTV.setText(jsonResponse.getString("sex"));
yearTV.setText(jsonResponse.getString("year"));
cursusTV.setText(jsonResponse.getString("cursus"));
} catch (JSONException e) {
onLoadProfileFail();
}
}
};
ProfileRequest profileRequest = new ProfileRequest(user_id, responseListener);
RequestQueue queue = Volley.newRequestQueue(ProfileActivity.this);
queue.add(profileRequest);
}
请求类
class ProfileRequest extends StringRequest {
private static final String USER_PROFILE_REQUEST = "http://[ipaddress]:8080/users/:id";
private Map<String, String> params;
public ProfileRequest(String id, Response.Listener<String> listener) {
super(Method.POST, USER_PROFILE_REQUEST, listener, null);
params = new HashMap<>();
params.put("id", id);
}
@Override
public Map<String, String> getParams() {
return params;
}
}
应用程序.js
router.get('/users/:id', function(req, res) {
User.find({ _id: "ie00847" }, function(err, user) {
if (err)
res.send(err);
res.json(user);
});
});
最佳答案
您收到 404 错误是因为您正在使用不可用的方法 (POST) 访问路由,因为在 app.js
文件中您为 get 请求定义了一个函数,而不是POST 请求,因此您需要将 Android 代码更新为 GET 请求。类似下面的内容,
class ProfileRequest extends StringRequest {
private static final String USER_PROFILE_REQUEST = "http://[ipaddress]:8080/users";
private Map<String, String> params;
public ProfileRequest(String id, Response.Listener<String> listener) {
super(Method.GET, USER_PROFILE_REQUEST + "/" + id, listener, null);
}
}
另请注意,无需覆盖 getParams()
方法,因为您不再发送 POST 请求。此外,您不能将参数添加到 GET 请求,除非通过硬编码 URL 中的值而不是通过 Map
对象。
希望这有帮助:)
关于java - Android Volley : BasicNetwork. performRequest:意外的响应代码 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43262375/
我试图通过 volley 库向我的服务器发送一个发布请求。但它不起作用。我已经在 Postman 中测试了我的 API,它在那里工作。我使用了相同的参数。 我得到的错误: BasicNetwork.p
我在使用 volley 库发出网络请求时遇到此错误,我已点击这些链接 Android Volley - BasicNetwork.performRequest: Unexpected response
当我尝试使用 Volley StringRequest 或 JsonObjectRequest 通过 rest api 获取数据时。我总是收到 400 错误。它与 postman 合作良好。 http
所以我正在尝试登录我的应用程序,当我在插入用户名和密码后单击登录按钮时,此错误显示在 android studio 中左下角底部工具栏的运行选项卡中: E/Volley: [11996] BasicN
我正在尝试从优步获取访问 token (我能够收到请求代码)。但是每当我尝试调用调用响应时总是显示错误 BasicNetwork.performRequest: Unexpected response
我的 Android Studio 中有这个登录 Java 代码: private void loginUser(){ pd = ProgressDialog.show(LoginAc
我正在使用 volley 库通过 POST 方法将用户注册到后端服务器。但它在 android logcat 中显示 BasicNetwork.performRequest: Unexpected r
当单击尚未选择的 EditParts(因此没有“直接编辑请求”)时,不会调用 EditPart 的方法 performRequest(Request)。 事情应该是这样吗?如果是,那么 REQ_SEL
我想从数据库中获取用户的信息并显示出来,但我一直收到这个错误: BasicNetwork.performRequest: Unexpected response code 404 这是我的javaco
为什么当我点击“登录”按钮时出现此错误:“E/Volley: [126] BasicNetwork.performRequest: 意外响应代码 500”? PS:它适用于本地,因此适用于本地数据库。
对于我的移动应用程序,我使用 Android Pay + Stripe 作为支付网关。我使用 Stripe 创建了一个商家帐户,并使用 PUBLISHABLE key 生成了一个 token 。在过去
我正在使用 Volley 库向服务器发送登录到应用程序的请求。直到几个小时前它才出现任何问题。但没有任何原因,我收到此错误“BasicNetwork.performRequest:意外响应代码 429
我正在尝试更新数据库中的参数,但在 Android 中我收到此错误: 09-15 13:26:43.505 31109-31784/app.bsmo.ismael034.com.bsmo E/Voll
我有这个错误: Volley: [8918] BasicNetwork.performRequest: Unexpected response code 403 for 我正在尝试连接服务器,但我无法
我正在使用 volley 将带有 GET 方法的请求链接发送到服务器以获取 json 对于大多数设备的大多数 android 版本,它都可以正常工作... 但它在一些平板电脑上发生意外错误并导致此错误
我正在尝试将数据从 Android 应用程序发送到 Servlet。我的 Android 应用程序运行正常。 问题仅与发送到 Servlet 的请求有关。它给出错误 BasicNetwork.perf
我最近开始开发我的 Android 应用程序,我需要一个登录和注册系统。我在 androidhive.info 上找到了一个教程,但我经常遇到错误。我正在使用 volley 库发送 HTTP 请求,L
我正在做一个用户注册是一个小模块的项目。我在这里使用了一些参数,例如姓名、电子邮件、联系方式、年龄、地址和个人资料图片。 //Here is my Android part Code Where Pr
问题陈述: 我正在尝试访问一个 REST API,该 API 将使用 Volley 为各种 HTTP 状态代码(400、403、200 等)返回一个 JSON 对象。 对于 200 以外的任何 HTT
我的第一个帖子:Anything I try to store on database enters with value '0' 我解决了这个问题,但现在我遇到了另一个问题:为什么我尝试登录时出现此
我是一名优秀的程序员,十分优秀!