如果你打算用 RN 写某网站的第三方 App,但该网站不提供可以返回 JSON 的接口,这种情况下就需要自己进行页面抓取及解析。
首先,我们需要明确一件事,RN 既不是 browser 也不是 node,这意味着有些 js 库是不能直接拿来用的。
HTTP 请求
RN 提供了 Fetch API 和 XMLHttpRequest API,基于这两个库的二次封装库也是可以用的,比如 frisbee 和 axios,所以在 RN 下进行 HTTP 请求不是什么问题。
HTML 解析
当前,最好用的 js html parser 应属 cheerio,是否可以在 RN 使用呢?让我们试试。
首先,安装 cherrio(注意,一定是要 v0.22.0,后面解释):
使用:
很不幸,出现了错误: