尝试通过android调用JSON api时出现无效请求错误

Posted

技术标签:

【中文标题】尝试通过android调用JSON api时出现无效请求错误【英文标题】:invalid request error when trying to call a JSON api through android 【发布时间】:2020-04-11 22:13:18 【问题描述】:

我正在尝试通过 android 调用 API,它给出了无效请求错误。

而 API 在 POSTMAN 中给出正确的结果。

我正在使用以下代码。下面的代码有问题吗。

 String url ="http://apiaddress";

// POST parameters
 Map<String, String> params = new HashMap<String, String>();
 params.put("tag", "test");

  JSONObject jsonObj = new JSONObject(params);

// Request a json response from the provided URL
  JsonObjectRequest jsonObjRequest = new JsonObjectRequest
  (Request.Method.POST, url, jsonObj, new Response.Listener<JSONObject>()
    
        @Override
        public void onResponse(JSONObject response)
        
            System.out.print("JSOn Object:"+jsonObj.toString());
        
     );

【问题讨论】:

你有什么异常吗?如果是,请编辑问题并从 logcat 发布堆栈跟踪。如果没有,请检查该网址是否可以通过手机访问。 尝试在清单中检查您的权限,如互联网等。 看到这个***.com/questions/41935546/… System.out.print("JSOn 对象:"+jsonObj.toString());在这一行中,它显示了无效的请求 【参考方案1】:

在 Volley 中,JsonObjectRequest 似乎不适用于 POST 请求。请改用StringRequest

也请查看answer。

另外,override getParamsStringRequest 方法并将您的参数作为 map 返回。

【讨论】:

以上是关于尝试通过android调用JSON api时出现无效请求错误的主要内容,如果未能解决你的问题,请参考以下文章

centOS 6.6 中安装cmake时出现无C++程序可关联

通过 Office Scripts Fetch 调用 API 时出现 CORS 问题

当我尝试从 Android Emulator 调用 MFP 适配器时出现以下错误

调用 WCF Web 服务时出现错误的 Json 响应

尝试通过 Postman 调用 OWIN OAuth 安全 Web Api 来获取 JWT 时出现“错误”:“unsupported_grant_type”

api rest 调用更新 django 模型时出现错误 415