如何使用phonegap从网站上获取文件?

时间:2013-06-06 23:45:30

标签: jquery cordova

我正在尝试使用phonegap和jquery从网站生成可下载文本文件列表。加载应用程序时,应自动获取此列表。因此,如果另一个文本文件被添加到网站,然后重新打开应用程序,新添加的文本文件也应该在列表中..我对这些技术很新,所以如果有人能告诉我我的意思,我将不胜感激我在这里做错了。这就是我的index.html的样子:

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="stylesheet" type="text/css" href="css/index.css" />
    <script type="text/javascript" charset="utf-8" src="cordova-2.7.0.js"></script>
    <script src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script>
  </head>
    <script type="text/javascript" charset="utf-8"> 

        document.addEventListener("deviceready",onDeviceReady,false);

        function onDeviceReady() {
          $.ajax({
          url: "http://www.samplesite.com/files/", //I feel like this is wrong
          context: document.body,
          success: function(){
          document.write(document.body); //I feel like I'm doing something very wrong here too
       }
     });
    }
   </script>
  </html>

2 个答案:

答案 0 :(得分:1)

通过请求http://www.samplesite.com/files/,您将获得该页面的原始html代码。 然后你需要手动解析它(在成功函数中)来检索url。如果你很幸运,页面形成良好,获得这些网址不会太难,如果不是......祝你好运。

答案 1 :(得分:0)

目标服务器上需要一个可以使用文件列表进行响应的端点。否则,您只是检索html。

在此页面上打开开发人员工具,并将以下代码粘贴到控制台中:

jQuery
 .get("http://stackoverflow.com/questions/16974040/how-to-grab-files-from-a-website-using-phonegap")
  .success(function(html) {alert(html);});

我不推荐使用屏幕抓取方法,但如果您对此感到满意,则需要找到一个javascript html解析器,并解析结果。如果您的服务可以使用实际数据列表进行响应,那么您可以将每个列表项添加到dom中。