Json 将PhoneGap BlackBerry应用程序连接到在线服务器

Json 将PhoneGap BlackBerry应用程序连接到在线服务器,json,cordova,mobile,blackberry-webworks,mobile-application,Json,Cordova,Mobile,Blackberry Webworks,Mobile Application,我正在创建一个BlackBerry应用程序,它提供现有web应用程序的功能,但使之适合移动电话用户。我正在使用PhoneGap和BlackBerry WebWorks SDK创建移动应用程序。我需要将数据发送到移动应用程序,并将数据(提交表单、更新配置文件)从移动应用程序接收到运行web应用程序的服务器。我还希望应用程序的用户通过黑莓互联网服务(BIS)与移动应用程序的其他用户聊天。我希望移动应用程序能够查询已为现有web应用程序创建的数据库,以便下载该应用程序的现有用户可以在其BlackBer

我正在创建一个BlackBerry应用程序,它提供现有web应用程序的功能,但使之适合移动电话用户。我正在使用PhoneGap和BlackBerry WebWorks SDK创建移动应用程序。我需要将数据发送到移动应用程序,并将数据(提交表单、更新配置文件)从移动应用程序接收到运行web应用程序的服务器。我还希望应用程序的用户通过黑莓互联网服务(BIS)与移动应用程序的其他用户聊天。我希望移动应用程序能够查询已为现有web应用程序创建的数据库,以便下载该应用程序的现有用户可以在其BlackBerry设备(而不是计算机)上查看其详细信息。有人能推荐一个解决方案吗

使用phonegap,您可以通过AJAX发送XMLHttpRequests。您可以用纯JavaScript或更简单的jQuery实现这一点

您需要使用服务器端语言(如php)进行数据库工作

下面是一个简单的示例,假设您在Phonegap应用程序中包含了jQuery

window.onload = function (){
document.addEventListener("deviceready", deviceReady, false);
}
function deviceReady{
    var userName = 'Hans';
    var userShoeSize = 'Medium';
    $.post("http://example.com/responseHandler.php", {
        userName: userName, userShoeSize:userShoeSize}, 
        function(data) {
            alert(data.greeting+data.shoeSize);
    }, "json");
}
在responseHandler.php中的服务器上:

<?php
    header("Access-Control-Allow-Origin: *");
    $response = array();
    $response['greeting'] = 'Hi, '.$_POST['userName'];
    $response['shoeSize'] = 'Your shoes are size '.$_POST['userShoeSize'];
    echo json_encode($response);
?>

通过在服务器上回显JSON编码的字符串,javascript可以轻松解析响应。您不必使用JSON,您可以处理服务器上的任何回显


请记住将您的页面列入白名单,并允许从服务器上的其他来源进行查询。

谢谢。但是如何从php代码中获取数据到特定的黑莓手机呢。这对我来说非常重要,尤其是当从另一部黑莓手机接收聊天数据时?你能给出一些示例代码吗?谢谢。这比我以前更深入了一点,所以我不太确定。但是,您可以用setInterval方法包装jQuery文章。这将使应用程序每隔N秒查询一次服务器。或者你可以使用推送服务,如urbanairship.com。但是,这不是我自己尝试过的东西,所以我不确定它将如何工作。我希望其他人能给出更好的答案。