首页 > 解决方案 > NodeJS没有收到参数

问题描述

我正在尝试通过 volley 将帖子发送到我的后端 API,其中包含参数,但我在后端没有收到任何内容

安卓方法:

private void sendPayments() {
    RequestQueue requestQueue = Volley.newRequestQueue(PaymentActivity.this);

    StringRequest stringRequest = new StringRequest(Request.Method.POST, clientCheckout, new Response.Listener<String>() {
        @Override
        public void onResponse(String response) {
            Log.e(TAG, "onResponse: "+response);

            if(response.toString().contains("Successful")) {
                Log.e(TAG, "onResponse: Successful");
            } else {
                Log.e(TAG, "onResponse: Failed");
            }
        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            Log.e(TAG, "onErrorResponse: "+error);
        }
    })
    {
        @Override
        protected Map<String, String> getParams() throws AuthFailureError {
            if(paramHash == null)
                return  null;
            Map<String, String> params = new HashMap<>();
            for (String key: paramHash.keySet()) {
                params.put(key, paramHash.get(key));
            }
            Log.e(TAG, "getParams: "+params);
            return params;
        }

        @Override
        public Map<String, String> getHeaders() throws AuthFailureError {
            Map<String, String> params = new HashMap<>();
            params.put("Content-Type", "application/x-www-form-urlencoded");
            return params;
        }
    };
    requestQueue.add(stringRequest);
}

这是后端代码:

 router.post('/checkout', (req, res, next) => {
  var url_parts = url.parse(req.url, true);
  var query = url_parts.query;

  const nonceFromTheClient = query.nonce;
  console.log(req.params);
  console.log(req.query);
  console.log(query);

  gateway.transaction.sale({
  amount: "10.00",
  paymentMethodNonce: nonceFromTheClient,
  options: {
    submitForSettlement: true
  }
}, function (err, result) {
  if(err) {
    console.log(err);
  } else {
    console.log(result);
  }
});
})

后端的所有日志都没有返回!但是Log.e(TAG, "getParams: "+params);记录数据所以数据存在但我不知道它是否被发送并且后端无法读取它或者它不是从一开始就发送的

标签: androidapiandroid-volleybackend

解决方案


推荐阅读