Visual Studio 2015 服务器端 Cordova Apache

Visual Studio 2015 Server side with Cordova Apache

我希望这个问题是具体的。

我想创建一个跨平台的移动应用程序。为此,我决定可能会使用支持 Apache Cordova 的 IDE。我决定我可能会使用 Visual Studio 2015 和 Apache Cordova 的附加工具。

我主要担心的是我在未来的应用程序中需要的服务器端连接。我想通过此应用程序访问一些 MS-SQL 表。据我了解,Apache Cordova 项目仅包含纯 JS 和 HTML。过去我使用 ASPX/ASMX 扩展来与我的数据库进行通信。有其他选择吗?或者我可以只在 Apache Cordova 项目中使用旧的 ASMX Web 服务,它仍然可以跨平台工作吗?

感谢您对此事的任何看法!

你是对的,

Apache Cordova/Phonegap projects consist only pure JS and HTML (and CSS)

Cordova/Phonegap 只是一个包装器,它将您的页面包装在一个容器中,并提供必要的 API 来与设备的功能进行通信。

因此,与另一个 place/project 中的服务器端方法通信的唯一方法是调用 Web 服务,您可以 perform an asynchronous HTTP (Ajax) request 像这样

$.ajax({
    type: "POST",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    url: "http://yourSite/yourApp/YourWebService.asmx/methodName",
    data: JSON.stringify({firstField: 123}),
    success: function (msg) {
        alert('It Works!');
    },
    error: function (xhr, status, error) {
        alert('It does not work!');
    }
});

您可能会发现跨域调用的问题,这意味着您无法从非 Web 服务域的域调用客户端上的 Web 服务。

我推荐使用a pure JavaScript CORS alternative, xDomain;我用过,它确实适用于跨域问题,它还有一个很好的例子,很好地解释了如何使用它