比较一下CGI与ASP调用方式的区别

比较一下CGI与ASP调用方式的区别,第1张

ASP是ActiveServerPage的缩写,意为“动态服务器页面”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是asp,现在常用于各种动态网站中。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。

PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:HypertextPreprocessor)的缩写。PHP是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。它可以比CGI或者Perl更快速的执行动态网页。

能访问外网的服务器上搭建一个http透明代理只允许内网访问,内网CURL指定proxy就可以了。或者可以使用SSH的端口转发功能实现。

假定A是本地内网主机,B是远程提供第三方服务的主机,这两台主机之间无法连通。但是,现在还有一台C,可以同时连通前面两台主机。因此,很自然的想法就是,通过C,将A连上B。

调用方法大致有三种方法:

1)使用,直接AXIS调用远程的web service

2)直接SOAP调用远程的webservice

3)使用wsdl2java把WSDL文件转成本地类,然后像本地类一样使用,即可。

我一般使用第三种,挺简单的:

比如webservice的代码如下:

@WebService

public class ServiceHello {

/

供客户端调用的方法

@param name

@return String

/

public String getValue(String name){

return "我叫"+name;

}

public static void main(String[] args) {

// TODO Auto-generated method stub

Endpointpublish("http://localhost:9001/Service/ServiceHello", new ServiceHello());

Systemoutprintln("service success!");

}

}

1)先建立客户端webservice项目,使用命令将WSDL文件转成本地类,比如:

C:\Users\aiher\Workspaces\MyEclipse 2015\TheClient\src>wsimport -s -p comhyanclient -keep http://localhost:9001/Service/ServiceHellowsdl

2)编写客户端测试类,调用服务端web service接口的某个方法,如下:

public class ServiceTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

ServiceHello hello = new ServiceHelloService()getServiceHelloPort();

String name = hellogetValue("Hyan");

Systemoutprintln("name-:"+name);

}

}

doGet是处理客户端发来的Get请求,doPost是处理客户端发来的Post请求,它们的区别可以从以下7个方面来说明:

1、客户端(一般指浏览器)生成的方式

get:form中method属性为get时;或者直接在URL地址栏中输入URL,需要传递参数时,直接在URL后面拼接“name=张三&age=18”这样的查询参数字符串;

post:form中method属性为post。

2、客户端数据传送方式

get:表单数据存放在URL地址后面。所有get方式提交时HTTP中没有消息体;

post:表单数据存放在HTTP协议的消息体中以实体的方式传送到服务器。

3、服务器获取数据方式

get:服务器采用Servlet中的doGet来获取变量的值;

post:服务器采用Servlet中的doPost来获取数据。

4、传输的数据量

get:数据量长度有限制,一般不超过2kb。因为是参数传递,且在地址栏中,故数据量有限制;

post:适合大规模的数据传送。因为是以实体的方式传送的。

5、安全性

get:安全性差。因为是直接将数据显示在地址栏中,浏览器有缓冲,可记录用户信息。所以安全性低;

post:安全性高。因为post方式提交数据时是采用的HTTP post机制,是将表单中的字段与值放置在HTTP HEADER内一起传送到ACTION所指的URL中,用户是看不见的。

-servlet

1。本地管理:你自己拥有服务器,广域网接口,已经申请了域名。这种情况成本最高,维护最麻烦。但是好处是更新速度快(可在本地直接完成),网络带宽稳定。

2。服务器托管:你自己拥有服务器,已经申请了域名。这种情况的成本较上一种的低,维护相对简单,只要将更新的资料随时上传即可。但是更新速度较慢(需要通过网络登陆到服务器上传),网络带宽可能不太稳定。

3。完全托管:你只拥有域名。这种情况成本最底,维护相对简单。但是网站的更新较慢,服务器的使用情况不明,性能没有保障(网络公司一般会让几可网站共用一个服务器),访问带宽完全没有保障。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 比较一下CGI与ASP调用方式的区别

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情