我的理解是,作为一名 android 开发人员,为了为使用 Spring MVC 或 PHP 或 Angular JS 构建的现有 Web 应用程序开发 native android 应用程序,我需要访问 JSON 格式的数据,并根据我的需要在我的 android 应用程序中使用。为此,我不必了解用于构建网站的 Web 框架的任何信息。
提前感谢您的帮助!
最佳答案
让我回答你的问题,尽管它们有点含糊。
是的,是的,您可以对 Web API 进行 Http 调用,并根据需要获取和解析 JSON 响应。
当然,如果你认识开发商,你应该问他。大多数具有开放 API 的流行网站都有某种关于其 JSON
响应的文档。一个很好的例子是查看 reddit's API ,您可以通过简单地在任何 url 的末尾附加 JSON
来获取任何页面作为 /.json
响应。如果您想练习解析 json
和发送 http 请求,这可能会很有用。我建议为此使用 OkHttp library。
这个问题我觉得最难回答,因为它有点含糊。你问你需要什么,你需要发送什么请求才能得到它。
这意味着您的请求应该具有哪些参数(最好的例子是如果站点使用身份验证,它是否使用 oauth
或其他东西,您是否需要首先 log in
并获取 access_token
作为通常的情况)。这可能会因您尝试获取的内容而有很大差异,有些请求是 POST
,有些是 GET
,甚至可能不需要任何其他参数等。
例如,如果您想从网站获取所有汽车的列表,您需要询问或搜索返回汽车 JSONArray
的路线,并且您可能想向该路线发送 GET
请求(使用access_token
参数,如果他们使用 oauth
,只是一个例子)并且你会收到一个响应,它可能看起来像这样:
{
[ {"id" : "1",
"manufacturer" : "bmw",
"model" : "320d"},
{"id" : "1",
"manufacturer" : "audi",
"model" : "A6"}
]
}
这纯粹是为了演示目的。
JSON
可能或多或少任意复杂,您可以根据需要对其进行解析,您可能只想使用其中包含的一些数据。关于 json
解析的主题有很多问题,所以我不会进一步讨论。我希望这对您有所帮助,如果您想制作自己的 API,有很多方法可以做到这一点,您还可以找到许多关于此主题的教程。我已经在 Laravel 和 Symfony PHP 框架中做到了这一点,让我告诉你,这并不难。您需要做的就是始终返回一个
JSON
,基本上就是这样。关于java - 如何获取任何网站的 JSON 数据以在我的 android 原生应用程序中解析和使用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38110481/