如何使用 Java 访问 ISBNDB 来查找一本书的信息?是否可以在不使用 Maven 或 Gradle 的情况下使用 ISBNDB api?
How does one access the ISBNDB using Java to find info on a book? Is it possible to use the ISBNDB api without using Maven or Gradle?
我正在尝试访问 ISBNDB 并获取关于一本书的所有相关数据的信息,以便我可以根据该数据为学校项目制作参考书目。但是,我在访问 ISBNDB 和使用 ISBNDB API 到 Java 时遇到问题。我以前从未使用过 Maven 或 Gradle,那么是否可以在不使用 Maven 或 Gradle 的情况下使用 ISBNDB API?如果是这样,我能得到一些示例代码来了解如何在 Java 中使用 ISBNDB API 吗?
我试过使用 ISBNDB API 中的示例代码并将其插入到我的 Java 项目中,但它无法编译或正常工作。冒号似乎不应该在 setRequestProperty 方法中,因为当我尝试将确切的代码放入我的编译器 (IntelliJ) 时,它不会编译,它只会生我的气。我在 ISBNDB 网站上制作了一个 Rest Key,并将其放入我的代码中,它是 "YOUR_REST_KEY"。我没有从示例中更改它。我尝试将冒号更改为逗号,但这对编译代码没有帮助。
private static HttpURLConnection con;
public static void main(String[] args) throws MalformedURLException,
ProtocolException, IOException {
String url = "https://api2.isbndb.com/book/9781934759486";
try {
URL myurl = new URL(url);
con = (HttpURLConnection) myurl.openConnection();
con.setRequestProperty("Content-Type", "application/json");
con.setRequestProperty("Authorization": "YOUR_REST_KEY");
con.setRequestMethod("GET");
StringBuilder content;
try (BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()))) {
String line;
content = new StringBuilder();
while ((line = in.readLine()) != null) {
content.append(line);
content.append(System.lineSeparator());
}
}
System.out.println(content.toString());
} finally {
con.disconnect();
}
}
我原以为要打印的内容是 ISBN 中有关该书的所有信息(如作者、书名、出版商、出版日期等),但只出现了一个编译错误,什么也没有被输出到控制台。
我发现了问题所在,事实是要使用此 API,您必须为此付费,而我在尝试使用它时并没有意识到这一点。我以为它是免费的,但事实证明不是,所以我没有权限使用 API.
我正在尝试访问 ISBNDB 并获取关于一本书的所有相关数据的信息,以便我可以根据该数据为学校项目制作参考书目。但是,我在访问 ISBNDB 和使用 ISBNDB API 到 Java 时遇到问题。我以前从未使用过 Maven 或 Gradle,那么是否可以在不使用 Maven 或 Gradle 的情况下使用 ISBNDB API?如果是这样,我能得到一些示例代码来了解如何在 Java 中使用 ISBNDB API 吗?
我试过使用 ISBNDB API 中的示例代码并将其插入到我的 Java 项目中,但它无法编译或正常工作。冒号似乎不应该在 setRequestProperty 方法中,因为当我尝试将确切的代码放入我的编译器 (IntelliJ) 时,它不会编译,它只会生我的气。我在 ISBNDB 网站上制作了一个 Rest Key,并将其放入我的代码中,它是 "YOUR_REST_KEY"。我没有从示例中更改它。我尝试将冒号更改为逗号,但这对编译代码没有帮助。
private static HttpURLConnection con;
public static void main(String[] args) throws MalformedURLException,
ProtocolException, IOException {
String url = "https://api2.isbndb.com/book/9781934759486";
try {
URL myurl = new URL(url);
con = (HttpURLConnection) myurl.openConnection();
con.setRequestProperty("Content-Type", "application/json");
con.setRequestProperty("Authorization": "YOUR_REST_KEY");
con.setRequestMethod("GET");
StringBuilder content;
try (BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()))) {
String line;
content = new StringBuilder();
while ((line = in.readLine()) != null) {
content.append(line);
content.append(System.lineSeparator());
}
}
System.out.println(content.toString());
} finally {
con.disconnect();
}
}
我原以为要打印的内容是 ISBN 中有关该书的所有信息(如作者、书名、出版商、出版日期等),但只出现了一个编译错误,什么也没有被输出到控制台。
我发现了问题所在,事实是要使用此 API,您必须为此付费,而我在尝试使用它时并没有意识到这一点。我以为它是免费的,但事实证明不是,所以我没有权限使用 API.