Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (中文) » SQL Anywhere 服务器 - 编程 » HTTP Web 服务 » 将 SQL Anywhere 用作 HTTP Web 服务器

 

将 SQL Anywhere 用作 HTTP Web 服务器快速入门指南

本快速入门指南介绍了如何启动 SQL Anywhere HTTP Web 服务器、如何创建 Web 服务以及如何使用 Web 浏览器访问它。但没有对 SQL Anywhere Web 服务功能,如 SOAP over HTTP 支持和应用程序开发进行全面介绍。虽然许多 SQL Anywhere Web 服务功能都可用,但超出了本指南的范畴。

执行以下任务:

  • 启动 SQL Anywhere HTTP Web 服务器数据库

  • 创建通用 HTTP Web 服务

  • 在 Web 浏览器中查看 Web 服务

 ♦  要创建 SQL Anywhere HTTP Web 服务器和通用 HTTP Web 服务
  1. 在装载 SQL Anywhere 数据库时启动 SQL Anywhere HTTP Web 服务器。

    在命令提示符处运行以下命令:

    dbeng12 -xs http(port=8082) samples-dir\demo.db
    注意

    使用 dbeng12 命令启动只有本地主机才能访问的个人数据库服务器。使用 dbsrv12 命令可以启动网络数据库服务器。

    samples-dir 替换为示例目录的位置。-xs http(port=8082) 选项指示服务器在端口 8082 监听 HTTP 请求。如果已有 Web 服务器在端口 8082 上运行,请使用其它端口号。

    有关启动 HTTP web 服务器的详细信息,请参见启动 HTTP Web 服务器

  2. 使用 CREATE SERVICE 语句创建 Web 服务,该服务响应进来的 Web 浏览器请求。

    1. 使用 Interactive SQL 连接到 demo.db 数据库。

      samples-dir 目录运行以下命令:

      dbisql -c "dbf=samples-dir\demo.db;uid=DBA;pwd=sql"
    2. 在数据库中创建新 Web 服务。

      在 Interactive SQL 中运行以下 SQL 脚本:

      CREATE SERVICE SampleWebService
          TYPE 'web-service-type-clause'
          AUTHORIZATION OFF
          USER DBA
          AS SELECT 'Hello world!';

      用所需 Web 服务类型替代 web-service-type-clause。出于 Web 浏览器的兼容性考虑,建议使用 HTML 类型的子句。其它通用 HTTP Web 服务类型子句包括 XMLRAWJSON。虽然可以使用 SOAPDISH 类型子句来创建 SOAP over HTTP Web 服务,但这些类型与上述语句不兼容。有关支持的 Web 服务类型的信息,请参见选择 Web 服务类型

      CREATE SERVICE 语句创建 SampleWebService Web 服务,返回 SELECT SQL 语句的结果集。在本例中,脚本返回 "Hello world!"

      AUTHORIZATION OFF 子句表示不需授权即可访问 Web 服务。

      USER DBA 语句表示服务语句应在 DBA 登录名下运行。

      AS SELECT 子句允许服务从表或函数中选择数据,或直接查看数据。使用 AS CALL 子句同样也可以调用存储过程。

      有关 CREATE SERVICE 语句和这些子句的详细信息,请参见CREATE SERVICE 语句

  3. 在 Web 浏览器中查看 Web 服务。

    在运行 SQL Anywhere HTTP Web 服务器的计算机上,打开 Web 浏览器(例如 Internet Explorer 或 Firefox),然后转到以下 URL:

    http://localhost:8082/demo/SampleWebService

    此 URL 将使 Web 浏览器直接转到端口 8082 上的 HTTP Web 服务器。SampleWebService 输出 "Hello world"。结果集输出的显示格式由步骤 2 中的 web-service-type-clause 指定。有关结果集在 Web 浏览器中的显示方式的详细信息,请参见选择 Web 服务类型

 其它示例资源