如何结合isapi、xml和xsl来做web服务程序 vc+isapi+xml+xsl

tlovexyj 2001-12-11 09:36:25
用VC做ISAPI,小弟用ODBC API将数据库中提取出的数据根据美工做的模板生成html
可是为了今后的扩展性和可维护性,小弟突发一想,isapi只将数据生成xml写回页面,将其数据和显示(原来是html,用的是CHttpServer)分离,以外部的xsl负责显示,这样在程序dll不必改,只用改xsl即可。
不知可否实现,请诸位大侠提示(详)

小弟在http://www.csdn.net/expert/topic/412/412604.shtm还有一帖,有兴趣的兄弟快去看看。

多谢
...全文
91 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tlovexyj 2001-12-13
  • 打赏
  • 举报
回复
up~
duker 2001-12-12
  • 打赏
  • 举报
回复
你是什么公司,做个这种东西都要用vc isapi,用脚本不是更方便吗,如果觉得脚本慢
用servlet和jsp,推荐去xml.apache.org 上面去看看cocoon
VSaber 2001-12-12
  • 打赏
  • 举报
回复
没问题的,数据直接写到xml里面,再用xslt做样式转换了!
蒋晟 2001-12-11
  • 打赏
  • 举报
回复
理论上可以实现,但是数据格式的设计比较麻烦
参见MSDN中的TOCsample示例
http://msdn.microsoft.com/code/sample.asp?url=/MSDN-FILES/026/002/188/msdncompositedoc.xml&frame=true
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwebgen/html/msdntoc2.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwebgen/html/msdntoc.asp
源码8 IDOMDocument vs. IXMLDocument.... . 8 TXMLDocument Programming .... 9 XML TreeView .. 12 TXMLDocument as Windows Service........................................... 14 XML Data Binding .............................................................................. 16 Generated Code ...................................................................... 20 Delphi XML Mapper............................................................................ 23 The XML Mapping Tool.............................................................. 23 Selecting Nodes ...................................................................... 24 Create and Test Transformation................................................. 26 XMLTransform......................................................................... 28 Visual Transformation .............................................................. 30 TXMLTransformClient ............................................................... 31 XSLT ............................................................................................... 32 XSL Transformations................................................................ 32 MSXSL ................................................................................... 32 Some examples of XSLT.................................................... 32 Default XSLT Templates ........................................................... 34 Our own XSLT Processor........................................................... 35 XML and XSL .......................................................................... 35 XMLData property ............................................................ 35 FileName property............................................................ 35 XML property................................................................... 36 XSLT Processor ....................................................................... 37 Alternative Approach ........................................................ 37 Summary......................................................................................... 38 2. Web Services: SOAP & WSDL 39 Web Services.................................................................................... 39 SOAP..................................................................................... 39 WSDL .................................................................................... 39 XSD Data Types ...................................................................... 41 SOAP and XML ........................................................................ 41 Building Delphi for Win32 Web Services................................................ 42 Debug and ISAPI..................................................................... 43 Second target (Indy) ........................................................ 44 SOAP Web Module............................................................ 45 SOAP Server Interface ............................................................. 47 SOAP Server Implementation .................................................... 51 Indy VCL Project ............................................................................... 53 Consuming Web Services.................................................................... 55 SOAP Client ............................................................................ 56 Using GetIEcho ....................................................................... 60 Delphi XML, SOAP & Web Services Bob Swart Training & Consultancy - iii - www.drbob42.com Using THTTPRIO...................................................................... 64 WSDL vs. SOAP....................................................................... 65 AdminEnabled......................................................................... 66 GetIEcho Implementation ......................................................... 69 Conversion Web Services.................................................................... 70 TemperatureIntf...................................................................... 72 TemperatureImpl .................................................................... 72 Debugging Web Services .................................................................... 73 Web Service Client................................................................... 73 Server Breakpoints .................................................................. 74 Deployment on Windows Server 2003 and IIS ....................................... 75 Enabling ISAPI / CGI................................................................ 75 Virtual Directory ...................................................................... 76 SSL Certificates................................................................................. 79 SSL and IIS6 on Windows Server 2003....................................... 79 Installing SSL Certificates ......................................................... 82 Deployment on Windows Server 2008 and IIS7 ........................... 83 Tracing Web Services......................................................................... 88 SOAP and Exceptions ......................................................................... 89 Echo Interface unit .................................................................. 89 Echo implementation unit ......................................................... 89 Echo import unit...................................................................... 90 Extending SOAP Exceptions....................................................... 90 SOAP and Databases ......................................................................... 92 Database Client....................................................................... 94 Extra Data Module ................................................................... 96 Alternative to data module: web module..................................... 98 SOAP Attachments ............................................................................ 98 Receiving SOAP Attachments .................................................... 101 Summary......................................................................................... 103 Exercises.......................................................................................... 103 Exercise #1 ............................................................................ 103 Exercise #2 ............................................................................ 103 Exercise #3 ............................................................................ 103 Exercise #4 ............................................................................ 103 Exercise #5 ............................................................................ 103 Exercise #6 ............................................................................ 103 Exercise #7 ............................................................................ 103 Exercise #8 ............................................................................ 103 3. SOAP and Security 105 SSL Certificates................................................................................. 105 Web Service Example......................................................................... 105 SourceCodeIntf................................................................ 105 SourceCodeImpl .............................................................. 106 Importing Win32 Secure Web Service ................................. 107 Summary......................................................................................... 108 Exercises.......................................................................................... 108 Exercise #1 ............................................................................ 108 Exercise #2 ............................................................................ 108 Exercise #3 ............................................................................ 108 4. Case Study: Automatic Updates 109
X3-BLOG 是基于XML+XSLT+AJAX技术构建的开源多用户博客门户系统,服务器端采用当前最流行的动态网页开发语言之一ASP.NET(C#) 2.0编写,支持多种数据库,包括SQLSERVER2000\SQLSERVER2005\ORACLE\MYSQL\DB2\ACCESS等,默认使用SQLSERVER2000。 X3-BLOG 遵从 GENERAL PUBLIC LICENSE(GPL) 开源协议,这意味着可以修改程序的一个或几个副本或程式的任何部分,以此形成基於这些程式的衍生作品。必须在修改过的档案中附有明显的说明:您修改了此一档案及任何修改的日期。 您必须让您发布或出版的作品,包括本程式的全部或一部分,或内含本程式的全部或部分所衍生的作品,允许第三方在此许可证条款下使用,并且不得因为此项授权行为而收费。 功能与特点 X3-BLOG完美的利用了浏览器的XML解析技术,完全实现数据和界面的分离,使网络传输数据量大大减少,加载速度远远超过了市面上所有的BLOG产品,有效的减轻了服务器的带宽压力,服务器端使用四大动态网站开发语言中速度最快的ASP.NET(C#)编写,屏弃了传统的控件开发方式,所有执行过程采用单向流的生成方式,使其对服务器CPU及内存资源的占用降至最低水平,并通过gzip压缩进一步缩减服务器的网络带宽消耗,提高响应速度 。 无Session设计杜绝了用户会话无故丢失的尴尬,客户端关联的会话加密方式带来了用户数据的高安全性,独特的XSL结构设计,彻底消除了跨站脚本攻击的隐患,杜绝恶意代码的执行,同时保证了文章内容的完整性。 DIV+CSS布局,交互方式采用当前最流行的AJAX技术,所有操所在一个页面完成,并实现了AJAX的最高应用——AjaxUpload,所有操作一气呵成,带来前所未有的用户体验。 简洁的主题与皮肤开发技术,更合理的模块化设计,大大减轻了后续开发的难度,使模板开发变得轻而易举。 自主研发的中文分词技术,速度超过3MB/s,准确率达到90%以上,大大超过网上各种开源中文分词技术,几乎可以和中科院的ICTCLAS相媲美,结合当前最成熟的Lucene的.net版本,实现了功能强大执行快速的全文检索引擎。 兼容性 Mozilla Firefox v1.5.0.0 以上版本 Microsoft Internet Explorer v6.0 以上版本 开发者 水月·静夜思 website: http://www.x3blog.cn QQ群: 39687684 编译与安装 1.用Microsoft Visual Studio 2005打开src中的SyCODE.x3-blog.sln并执行发布。 2.创建IIS站点,路径指向发布目录,并将ASP.NET版本设置为2.0。 3.进入站点属性设置,设置默认文档为main.xml、head.jpg、head.gif和head.png。 4.设置ISAPI筛选器,创建名为URLRewrite的筛选器,执行文件指向压缩包中URLRewrite目录下的Rewrite.dll,httpd.ini文件必须和Rewrite.dll放在相同录中。 5.为发布目录设置IIS和ASP.NET用户的读写权限。 6.启动SQLServer查询分析器,执行database目录中X3BolgData.sql创建数据库。 7.创建SQL用户并支派其对数据库X3-BLOG的相关权限。 8.启动站点根路径下的stringcrypt.htm,根据实际情况输入数据库连接字符串,点击加密按钮,复制加密后的密文,替换网站根目录下的数据源配置文件DataSource.config的根节点中的connstring属性。 9.解压复制SyCODE.ThesaurusAnalysis项目中的Dicts下的所有文件至任意目录。 10.打开站点根目录下的web.config文件,找到smtpSettings节点,按照提示设置相应节点属性。使用stringcrypt.htm页面加密邮箱密码添入password属性中。 11.找到web.config中的appSettings配置节点,将IndexDirectory设置成保存日志索引的真实目录路径,将StoreDirectory设置成保存日志正文压缩文档的真实目录路径,将DictsDirectory设置为第8步中选择的存放目录。 12.打开host.xml文件,将host和searchhost节点的内容改为你实际的站点路径。
★国人的骄傲★国产大型开源多用户博客系统 关于 X3-BLOG X3BLOG: 国内效率最快的AJAX多用户博客系统 国内搜索引擎最强大的多用户博客系统 国内唯一支持所有浏览器的多用户博客系统 国内唯一应用AJAX+XML+XSL三种技术于一体的博客系统 X3-BLOG 是基于XML+XSLT+AJAX技术构建的开源多用户博客门户系统,服务器端采用当前最流行的动态网页开发语 言之一ASP.NET(C#) 2.0编写,支持多种数据库,包括SQLSERVER2000\SQLSERVER2005\ORACLE\MYSQL\DB2等,默认使用 SQLSERVER2000。 X3-BLOG 遵从 GENERAL PUBLIC LICENSE(GPL) 开源协议,这意味着可以修改程序的一个或几个副本或程式的任何 部分,以此形成基於这些程式的衍生作品。必须在修改过的档案中附有明显的说明:您修改了此一档案及任何修改的 日期。 您必须让您发布或出版的作品,包括本程式的全部或一部分,或内含本程式的全部或部分所衍生的作品,允许 第三方在此许可证条款下使用,并且不得因为此项授权行为而收费。 功能与特点 X3-BLOG完美的利用了浏览器的XML解析技术,完全实现数据和界面的分离,使网络传输数据量大大减少,加载速 度远远超过了市面上所有的BLOG产品,有效的减轻了服务器的带宽压力,服务器端使用四大动态网站开发语言中速度 最快的ASP.NET(C#)编写,屏弃了传统的控件开发方式,所有执行过程采用单向流的生成方式,使其对服务器CPU及内 存资源的占用降至最低水平,并通过gzip压缩进一步缩减服务器的网络带宽消耗,提高响应速度 。 无Session设计杜绝了用户会话无故丢失的尴尬,客户端关联的会话加密方式带来了用户数据的高安全性,独特的 XSL结构设计,彻底消除了跨站脚本攻击的隐患,杜绝恶意代码的执行,同时保证了文章内容的完整性。 DIV+CSS布局,交互方式采用当前最流行的AJAX技术,所有操所在一个页面完成,并实现了AJAX的最高应用—— AjaxUpload,所有操作一气呵成,带来前所未有的用户体验。 简洁的主题与皮肤开发技术,更合理的模块化设计,大大减轻了后续开发的难度,使模板开发变得轻而易举。 自主研发的中文分词技术,速度超过3MB/s,准确率达到90%以上,大大超过网上各种开源中文分词技术,几乎可 以和中科院的ICTCLAS相媲美,结合当前最成熟的Lucene的.net版本,实现了功能强大执行快速的全文检索引擎。 兼容性 兼容市面上所有主流浏览器(包括google Chrome浏览器) 演示地址: http://blog.muchool.com 官方下载: http://www.shinechain.com.cn/downloads/software.htm 在线查看完整源代码: http://www.muchool.com/project/X3BLOG_DYHB/1.1.0.beta1.htm 版本更新内容 * 使用开源UrlRewrite筛选器Ionic's Isapi Rewriter替换了商业的ISAPI Rewriter * 修正了一处安装为虚拟目录时的路径指向错误 * 加入了类似QQ空间的相册上下翻页功能 * 加入了大量的服务器端和脚本代码注释 * 实现对最新的Google Chrome浏览器的支持 * 优化了安装程序,杜绝了对安装目标设置ASP.NET版本是导致IIS进程崩溃的现象 * 解决了作为虚拟目录执行时的web.config继承问题 * 修正了多处目录指向错误 * 增加对虚拟目录的支持 * 加入了安装项目 * 修正了后太管理中上传图片不能访问的错误 后台用户名:admin 密码:123456
★国人的骄傲★国产大型开源多用户博客系统 关于 X3-BLOG X3BLOG: 国内效率最快的AJAX多用户博客系统 国内搜索引擎最强大的多用户博客系统 国内唯一支持所有浏览器的多用户博客系统 国内唯一应用AJAX+XML+XSL三种技术于一体的博客系统 X3-BLOG 是基于XML+XSLT+AJAX技术构建的开源多用户博客门户系统,服务器端采用当前最流行的动态网页开发语 言之一ASP.NET(C#) 2.0编写,支持多种数据库,包括SQLSERVER2000\SQLSERVER2005\ORACLE\MYSQL\DB2等,默认使用 SQLSERVER2000。 X3-BLOG 遵从 GENERAL PUBLIC LICENSE(GPL) 开源协议,这意味着可以修改程序的一个或几个副本或程式的任何 部分,以此形成基於这些程式的衍生作品。必须在修改过的档案中附有明显的说明:您修改了此一档案及任何修改的 日期。 您必须让您发布或出版的作品,包括本程式的全部或一部分,或内含本程式的全部或部分所衍生的作品,允许 第三方在此许可证条款下使用,并且不得因为此项授权行为而收费。 功能与特点 X3-BLOG完美的利用了浏览器的XML解析技术,完全实现数据和界面的分离,使网络传输数据量大大减少,加载速 度远远超过了市面上所有的BLOG产品,有效的减轻了服务器的带宽压力,服务器端使用四大动态网站开发语言中速度 最快的ASP.NET(C#)编写,屏弃了传统的控件开发方式,所有执行过程采用单向流的生成方式,使其对服务器CPU及内 存资源的占用降至最低水平,并通过gzip压缩进一步缩减服务器的网络带宽消耗,提高响应速度 。 无Session设计杜绝了用户会话无故丢失的尴尬,客户端关联的会话加密方式带来了用户数据的高安全性,独特的 XSL结构设计,彻底消除了跨站脚本攻击的隐患,杜绝恶意代码的执行,同时保证了文章内容的完整性。 DIV+CSS布局,交互方式采用当前最流行的AJAX技术,所有操所在一个页面完成,并实现了AJAX的最高应用—— AjaxUpload,所有操作一气呵成,带来前所未有的用户体验。 简洁的主题与皮肤开发技术,更合理的模块化设计,大大减轻了后续开发的难度,使模板开发变得轻而易举。 自主研发的中文分词技术,速度超过3MB/s,准确率达到90%以上,大大超过网上各种开源中文分词技术,几乎可 以和中科院的ICTCLAS相媲美,结合当前最成熟的Lucene的.net版本,实现了功能强大执行快速的全文检索引擎。 兼容性 兼容市面上所有主流浏览器(包括google Chrome浏览器) 演示地址: http://blog.muchool.com 官方地址: http://www.shinechain.com.cn/downloads/software.htm 在线查看完整源代码: http://www.muchool.com/project/X3BLOG_DYHB/1.1.0.beta1.htm 版本更新内容 * 使用开源UrlRewrite筛选器Ionic's Isapi Rewriter替换了商业的ISAPI Rewriter * 修正了一处安装为虚拟目录时的路径指向错误 * 加入了类似QQ空间的相册上下翻页功能 * 加入了大量的服务器端和脚本代码注释 * 实现对最新的Google Chrome浏览器的支持 * 优化了安装程序,杜绝了对安装目标设置ASP.NET版本是导致IIS进程崩溃的现象 * 解决了作为虚拟目录执行时的web.config继承问题 * 修正了多处目录指向错误 * 增加对虚拟目录的支持 * 加入了安装项目 * 修正了后太管理中上传图片不能访问的错误 后台用户名:admin 密码:123456
关于 X3-BLOG

X3-BLOG 是基于XML+XSLT+AJAX技术构建的开源多用户博客门户系统,服务器端采用当前最流行的动态网页开发语言ASP.NET(C#)

2.0编写,支持多种数据库,包括SQLSERVER2000\SQLSERVER2005\ORACLE\MYSQL\DB2\ACCESS等,默认使用SQLSERVER2000。

X3-BLOG 遵从 GENERAL PUBLIC LICENSE(GPL) 开源协议,这意味着可以修改程序的一个或几个副本或程式的任何部分,以此形成基於这些程式的衍生作品。必须在修改过的档案

中附有明显的说明:您修改了此一档案及任何修改的日期。 您必须让您发布或出版的作品,包括本程式的全部或一部分,或内含本程式的全部或部分所衍生的作品,允许第三方在

此许可证条款下使用,并且不得因为此项授权行为而收费。

功能与特点

X3-BLOG完美的利用了浏览器的XML解析技术,完全实现数据和界面的分离,使网络传输数据量大大减少,加载速度远远超过了市面上所有的BLOG产品,有效的减轻了服务器的带

宽压力,服务器端使用四大动态网站开发语言中速度最快的ASP.NET(C#)编写,屏弃了传统的控件开发方式,所有执行过程采用单向流的生成方式,使其对服务器CPU及内存资源的占

用降至最低水平,并通过gzip压缩进一步缩减服务器的网络带宽消耗,提高响应速度 。

无Session设计杜绝了用户会话无故丢失的尴尬,客户端关联的会话加密方式带来了用户数据的高安全性,独特的XSL结构设计,彻底消除了跨站脚本攻击的隐患,杜绝恶意代码

的执行,同时保证了文章内容的完整性。

DIV+CSS布局,交互方式采用当前最流行的AJAX技术,所有操所在一个页面完成,并实现了AJAX的最高应用——AjaxUpload,所有操作一气呵成,带来前所未有的用户体验。

简洁的主题与皮肤开发技术,更合理的模块化设计,大大减轻了后续开发的难度,使模板开发变得轻而易举。

自主研发的中文分词技术,速度超过3MB/s,准确率达到90%以上,大大超过网上各种开源中文分词技术,几乎可以和中科院的ICTCLAS相媲美,结合当前最成熟的Lucene的.net

版本,实现了功能强大执行快速的全文检索引擎。


兼容性
Mozilla Firefox v1.5.0.0 以上版本
Microsoft Internet Explorer v6.0 以上版本

开发者
水月·静夜思
website: http://www.x3blog.cn
sourceforge项目地址: http://sourceforge.net/projects/x3blog/
QQ 群: 39687684


编译与安装

1.用Microsoft Visual Studio 2005打开src中的SyCODE.x3-blog.sln并执行发布。
2.创建IIS站点,路径指向发布目录,并将ASP.NET版本设置为2.0。
3.进入站点属性设置,设置默认文档为main.xml、head.jpg、head.gif和head.png。
4.设置ISAPI筛选器,创建名为URLRewrite的筛选器,执行文件指向压缩包中URLRewrite目录下的Rewrite.dll,httpd.ini文件必须和Rewrite.dll放在相同录中。
5.为发布目录设置IIS和ASP.NET用户的读写权限。
6.启动SQLServer查询分析器,执行database目录中X3BolgData.sql创建数据库。
7.创建SQL用户并支派其对数据库X3-BLOG的相关权限。
8.启动站点根路径下的stringcrypt.htm,根据实际情况输入数据库连接字符串,点击加密按钮,复制加密后的密文,替换网站根目录下的数据源配置文件DataSource.config的

根节点中的connstring属性。
9.解压复制SyCODE.ThesaurusAnalysis项目中的Dicts下的所有文件至任意目录。
10.打开站点根目录下的web.config文件,找到smtpSettings节点,按照提示设置相应节点属性。使用stringcrypt.htm页面加密邮箱密码添入password属性中。


11.找到web.config中的appSettings配置节点,将IndexDirectory设置成保存日志索引的真实目录路径,将StoreDirectory设置成保存日志正文压缩文档的真实目录路径,将DictsD

irectory设置为第9步中选择的存放目录。
12.打开host.xml文件,将host和searchhost节点的内容改为你实际的站点路径。

3,055

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC HTML/XML
社区管理员
  • HTML/XML社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧