当前位置: 首页 > 知识库问答 >
问题:

我一直在android studio中制作一个新闻API项目,但有一次截击出错了。错误-com.Android截击AuthFailureError。使用json

姜煌
2023-03-14

公共类MainActivity扩展了AppCompatActivity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    RequestQueue requestQueue;
    requestQueue = Volley.newRequestQueue(this);
    List<news_Objects> newsList = new ArrayList<>();

    //url for News API 

    String url="https://newsapi.org/v2/everything?q=apple&from=2021-08-31&to=2021-08-31&sortBy=popularity&apiKey=ca3d6c89eff24db2a8ef78868f0af555";

//使json对象请求JsonObjectRequest=new JsonObjectRequest(request.Method.GET,url,null,new Response.Listener(){@Override public void onResponse(JSONObject Response){

            try {
                JSONArray jsonArr = response.getJSONArray("articles");

                for (int i = 0; i < jsonArr.length(); i++) {
                    JSONObject newsDetail = jsonArr.getJSONObject(i);

//创建news_Objects类名

                    news_Objects news = new news_Objects();

                    String imtUrl = newsDetail.getString("urlToImage");
                    String title = newsDetail.getString("title");
                    String detail = newsDetail.getString("description");
                    String newsUrl = newsDetail.getString("url");
                    String content = newsDetail.getString("content");

                    news.setNewsImageUrl(imtUrl);
                    news.setNewsTitle(title);
                    news.setNewsDetail(detail);
                    news.setNewsUrl(newsUrl);
                    news.setContent(content);
                    newsList.add(news);
                }

            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            Log.d("fine", "Something Wrong"+error);
            Toast.makeText(MainActivity.this, "Something Wrong "+error, Toast.LENGTH_SHORT).show();
            error.printStackTrace();
        }
    });
    requestQueue.add(request);

}

}

共有2个答案

连俊智
2023-03-14

可能您的API密钥不是活动的,请检查您的API密钥状态,然后再次点击API。

柴坚诚
2023-03-14

您的API密钥无效,请检查您的API密钥。获取此响应:{“状态”:“错误”,“代码”:“apiKeyInvalid”,“消息”:“您的API密钥无效或不正确。请检查您的密钥,或转到https://newsapi.org创建一个免费的API密钥。“}

 类似资料:
  • 如何从Volley项目(git存储库)中制作. jar文件? 我尝试按照此答案中的说明进行操作,但是在克隆的文件夹中运行会抛出此错误:

  • 我想向服务器发送一篇帖子,帖子的正文是真是假。我有这个代码,我使用截击库 ShoozyHeader()将内容类型设置为text/plain,并将Accept设置为text/plain以及身份验证所需的其他标头。 如果我尝试http://requestmaker.com/,服务器正确响应,但我运行此代码,服务器响应: 错误的请求-无效的头HTTP错误400。请求的标头名称无效。 如果删除getBod

  • 我在我的项目中使用了凌空和格森。该项目是一个Lib项目。当我在演示项目中使用Lib时,截击总是抛出错误响应,并显示消息:“org.json.JSONException:End of input at character 0”,并且从来没有成功响应。我想这是由ProGuard引起的。奇怪的是,当我在Lib或演示项目中设置“minifyEnabled”时,一切都很好。但当我在Lib和Demo中设置“m

  • 我运行的是Mac OSX,我安装了android Studio-它启动正常。 问题1 我用一个空活动开始一个新项目。在最上面的窗户上我收到一条信息 问题2 我在底部窗口中看到以下错误: 错误:CompilesDKVersion android-L需要使用JDK 7 Open SDK Settings进行编译 打开文件 当我尝试在设备上运行项目时,我得到以下错误: 失败[INSTALL_FAILED

  • 当我已经安装模块Volley在android工作室我收到错误: 错误:配置项目“:volley”时出现问题。在C:\Users\egen\AppData\Local\android\sdk Open android sdk Manager中找不到哈希字符串为“android-22”的目标 我已经安装了Android支持库这里怎么了? 编辑 现在我收到了错误: 错误:(10,1)在计算根项目Fysi

  • 我正在尝试使用Volley获取JSON对象以创建动态自动完成,但在使用Volley请求时,我在日志cat中看到: 截击:[486]基本网络。logSlowRequests:请求的HTTP响应= 这些答案并没有解决我的问题。 这里是初始化请求队列的Singleton类: 发出请求的方法: 下面是HTTP Connector类: