0

我必须使用 phonegap(HTML5、css、javascript、json、jquery、...)开发一个应用程序。这个应用程序应该必须打开一个外部网站(使用 inAppBrowser)才能登录,然后返回到提供令牌的应用程序。现在我可以打开外部网站,但我不知道如何返回应用程序。有人能帮我吗?谢谢

奥马尔

4

2 回答 2

1

我只是粗略地写了一些代码来从外部网站检索数据。希望这可以帮助:

var yourApp = {
getData : function(q) {

var search_url = "http://xyz.com/xyz/customfeed?filterby=custom&urlfilter=1&" + q;
$("#loading").show();
$.ajax({
  type: 'GET',
  url: search_url,
  dataType: 'xml',
  success: function(xml) {
    $('entry', xml).each(function() {

      var hi = new xyzDataItem();
      hi.title = $(this).find('title:eq(0)').text();
      hi.link = $(this).find('link:eq(0)').attr('href');
      hi.desc = $(this).find('summary:eq(0)').text();
      hi.date = $(this).find('updated:eq(0)').text();
      hi.id = $(this).find('id:eq(0)').text();
      $("#loading").hide();
          $("#search_results").append('<div class="abc">' +
          '<h2>' + hi.title + '</h2>' +
          '<P>' + hi.desc + '</p>' +
          '<P><a href="' + hi.link + '" class="external">xyzData</a></p>' +
          '</div>');
        });
    }
  });
}
}
于 2013-08-27T15:21:03.643 回答
0

如果您使用的是 InAppBrowser,请执行以下操作:

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

function onDeviceReady() {
     var ref = window.open('http://apache.org', '_blank', 'location=yes');
     ref.addEventListener('loadstop', function(event) { 
          if (event.url,indexOf("http://apache.org") > -1){
              //do something
          } 

     });
}

理想情况下,令牌应该是 URL 的一部分,以便更容易检索。否则使用 $.getJSON 方法,不要使用 InAppBrowser。但如果使用 InAppBrowser,那么令牌应该是查询字符串参数。

例如http://yoursite.com/loginsuccess?token=adsfsadfdsfasdf

于 2013-08-27T22:13:32.233 回答