Volley没有正确执行node.js POST请求

时间:2017-01-08 13:46:34

标签: android node.js android-volley

我正在使用node.js创建一个应用程序作为后端脚本语言。为了测试我的应用程序,我使用以下代码

创建了一个简单的node.js脚本
  app.post('/hello', function(request, response){
  var outputJson = request.param('test');
  var myJson = "{'Value':"+outputJson+"}";
  response.send(JSON.stringify(outputJson));
  })

我使用Volley从我的应用调用此脚本。代码如下

  private void sendDatatoHeroku(final String names){
  //Toast.makeText(getApplicationContext(),"Sending Data",Toast.LENGTH_SHORT).show();
  StringRequest str = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>() {
  @Override
  public void onResponse(String response) {
  Toast.makeText(getApplicationContext(),response.toString(),Toast.LENGTH_SHORT).show();
  }
  }, new Response.ErrorListener() {
  @Override
  public void onErrorResponse(VolleyError error) {
  Toast.makeText(getApplicationContext(),error.toString(),Toast.LENGTH_SHORT).show();
  }
  }){
  @Override
  protected Map<String, String> getParams() throws AuthFailureError {
  Map<String,String> params = new HashMap<String,String>();
  params.put("test",names);
  return params;
  }
  };
  RequestQueue rq = Volley.newRequestQueue(getApplicationContext());
  rq.add(str);
  }

JSON toast始终显示为null。我也尝试用RESTClient调用URL,我也得到了null。我以相同的方式使用POST方法调用PHP脚本,并且每次都有效。 node.js脚本的结束点是https://sfbpush.herokuapp.com/hello

这里出了什么问题?

0 个答案:

没有答案