Cordova应用程序和服务器与PHP通信

时间:2014-06-02 14:49:20

标签: javascript php backbone.js slim ripple

我正在使用cordova和ripple仿真器编写一个跨平台的移动应用程序。 我还开发了一个相关的网站。移动应用和网站共享相同的数据库。 我使用PHP作为网站与DB进行通信,因此我已经编写了许多我肯定也会用于移动应用程序的查询。

我编写了一个PHP文件来使用这样的RESTful API(使用Slim框架):

<?php
require 'Slim/Slim.php';
$app = new Slim();
$app->get('/app/favourites',         'getFavourites');
$app->run();
function getFavourites() {
    $sql = "select * FROM user_list";
    try {
        $db = getConnection();   // get connection with 'localhost'
        $stmt = $db->query($sql);
        $list = $stmt->fetchAll(PDO::FETCH_OBJ);
        $db = null;
        echo '{"list": ' . json_encode($list) . '}';
    } catch(PDOException $e) {
        echo '{"error":{"text":'. $e->getMessage() .'}}';
    }
}

我已将此文件放在NetBeans项目根文件夹中名为“api”的文件夹中。

我的问题是我不知道如何将移动应用程序(从javascript文件)连接到php文件,我也不知道如何测试通信是否有效。

对于istance,我写了一个像这样的JS文件:

// The root URL for the RESTful services
var rootURL = "http://localhost/myapp/api/app";
var getFavourites = function () {
      console.log('getFavourites');
          $.ajax({
             type: 'GET',
             url: rootURL + '/favourites',
             dataType: "json", 
             success: function(list) {
                console.log (" list: " + list );
             },
             error: function() {
                console.log (" error " );
             }
          });
};         
getFavourites();

我收到涟漪错误:

500 Internal Server Error
{
  "code": "ECONNREFUSED",
  "errno": "ECONNREFUSED",
  "syscall": "connect"
}

如何使其工作并以涟漪进行测试?

由于

0 个答案:

没有答案