首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用'themoviedbapi‘包装器在TMDB API上使用响应状态码进行异常处理

使用'themoviedbapi‘包装器在TMDB API上使用响应状态码进行异常处理
EN

Stack Overflow用户
提问于 2017-01-24 00:39:36
回答 1查看 212关注 0票数 0

我在使用包装器'themoviedbapi‘抓取TMDB的数据时遇到了一些问题。

我写了一个测试类,看看当我想把那些json响应放入db时会发生什么。

因此,当点击一个ID时,我收到了以下消息:

代码语言:javascript
复制
Exception in thread "main" ResponseStatus{code=34, message=The resource you requested could not be found.}
at info.movito.themoviedbapi.AbstractTmdbApi.mapJsonResult(AbstractTmdbApi.java:78)
at info.movito.themoviedbapi.AbstractTmdbApi.mapJsonResult(AbstractTmdbApi.java:45)
at info.movito.themoviedbapi.AbstractTmdbApi.mapJsonResult(AbstractTmdbApi.java:40)
at info.movito.themoviedbapi.TmdbMovies.getMovie(TmdbMovies.java:60)
at tmdb_api_to_db.Test.main(Test.java:21)

由于我的Java像地狱一样生锈,你能告诉我,怎么处理吗?我正在考虑try&catch,但如果有任何好的建议,我会很感激!

到目前为止,我的代码如下:

代码语言:javascript
复制
package tmdb_api_to_db;

import org.apache.commons.httpclient.HttpException;
import info.movito.themoviedbapi.TmdbApi;
import info.movito.themoviedbapi.TmdbMovies;
import info.movito.themoviedbapi.model.Credits;
import info.movito.themoviedbapi.model.MovieDb;

public class Test {


public static void main(String[]args){

    int movieID = 1;

    try{

    TmdbMovies movies = new TmdbApi("###########").getMovies();
    MovieDb movie_name = movies.getMovie(movieID, "en");
    Credits movie_credits = movies.getCredits(movieID);

    System.out.println(movie_name);
    System.out.println(movie_credits.getCast());
    System.out.println(movie_credits.getCrew());
    System.out.println(movie_credits.getGuestStars());
    System.out.println(prettyJsonString);
    }catch(XX){
        }

    }

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-24 01:27:33

使用try catch是一个很好的方法。我不知道这个API,但是你可以检查catch中的错误代码来决定下一步做什么。

如果您真的想确保错误来自特定的行,我建议您修改try/catch,如下所示:

代码语言:javascript
复制
// ..

TmdbMovies movies = new TmdbApi("###########").getMovies();
MovieDb movie_name;
try{
    movie_name = movies.getMovie(movieID, "en");
}catch(Throwable e){
    System.err.println("Erreur getting movie #"+movieID);
    return;
}

// ...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41811264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档