API 服务器公开允许连接到您的数据的 Web 服务。使用 CData API 服务器的 OData 终结点, 对 node.js 数据执行 CRUD 查询。

CData API 服务器与 ADO.NET 提供程序配对时, 将 postgresql 数据 (或来自120多个其他 ADO.NET 提供程序的数据) 公开为 OData 终结点, 可以使用简单的 HTTP 请求从 node.js 端点查询。本文介绍如何使用 API 服务器在 node.js 中请求 JSON 格式的 PostgreSQL 数据。

设置 API 服务器

按照以下步骤开始生成安全的 PostgreSQL OData 服务:

部署

API 服务器在您自己的服务器上运行。在 Windows 上, 可以使用单机服务器或 IIS 进行部署。在 Java servlet 容器中, 删除 API 服务器 WAR 文件。有关详细信息和操作方法, 请参阅帮助文档。

API 服务器在Microsoft AzureAmazon EC2Heroku上也很容易部署。

连接到 PostgreSQL

在为 postgresql 部署 API 服务器和ADO.NET 提供程序后, 通过单击 “设置” > “连接” 并在 API 服务器中添加新连接, 提供连接到 postgresql 所需的身份验证值和其他连接属性管理控制台。

要连接到 PostgreSQL, 请设置服务器、端口 (默认端口为 5432) 和数据库连接属性, 并设置您希望用于向服务器进行身份验证的用户和密码。如果未指定数据库属性, 则数据提供程序将连接到用户的默认数据库。

然后, 您可以通过单击 “设置” > “资源”, 选择要允许 API 服务器访问的 PostgreSQL 实体。

授权 API 服务器用户

确定要生成的 OData 服务后, 通过单击 “设置” > “用户” 授权用户。API 服务器使用基于不出所料的身份验证, 并支持主要的身份验证方案。访问也可以基于 IP 地址进行限制;默认情况下, 除本地计算机之外的所有 IP 地址都受到限制。您可以对与 SSL 的连接进行身份验证和加密。

使用来自 node.js 的 OData 源

OData 源在 node.js 中很容易工作。您可以使用 node.js 中的 HTTP 客户端从 API 服务器的 OData 终结点请求 JSON 格式的数据。发出请求后, 您可以构造响应的正文并调用 JSON.parse() 函数将其解析为记录。

下面的代码将对订单数据进行经过身份验证的请求。下面的示例 URL 应用了一个简单的筛选器, 它在货主国家列中搜索具有美国值的记录。

var http = require('http');
http.get({
protocol: "http:",
hostname: "MyServer.com",
port: MyPort,
path: "/api.rsc/Orders?$filter=" + encodeURIComponent("ShipCountry eq 'USA'"),
auth: 'MyUser:MyAuthtoken'
},
function(res) {
var body = '';
res.on('data', function(chunk) {
body += chunk;
});
res.on('end', function() {
console.log(body);
var jsonData = JSON.parse(body);
});
}).on('error', function(e) {
console.log("Error: ", e);
});
Comments are closed.