mg4377娱乐娱城官网_mg4377娱乐手机版_www.mg4377.com

mg4377娱乐手机版:动用Ruby的SOAP肆昂科拉编写SO

时间:2019-06-02 17:16来源:mg4377娱乐手机版
 什么是SOAP ? 采取Ruby的SOAP4Tiguan编写SOAP服务器的教程,rubysoap四r编写soap  什么是SOAP ? 粗略对象访问协议(SOAP)是一个跨平台和语言毫无干系的,基于XML的RPC协议,常常(但不断定)是

 什么是SOAP ?

采取Ruby的SOAP4Tiguan编写SOAP服务器的教程,rubysoap四r编写soap

 什么是SOAP ?

粗略对象访问协议(SOAP)是一个跨平台和语言毫无干系的,基于XML的RPC协议,常常(但不断定)是HTTP。

它选择XML来编码音讯使长途进程调用,HTTP在网络上从客户机到服务器来传输音信,反之亦然。

SOAP有多少个优势超越任何技艺,如COM,CORBA等为例,其相对廉价的配置和调剂费用,它的可扩充性和易于使用,存在二种不一样的言语和平台完结。

请参阅出简约的学科理解 SOAP

本课程将熟谙SOAP完毕Ruby(SOAP4途锐)。那是2个大旨的学科,所以要是急需深切细节,那么要求参谋其余财富。
安装SOAP4R:

SOAP4CR-V是由Hiroshi Nakamura编定,能够一向从英特网下载Ruby的开支的SOAP完毕:

留神:有希望曾经设置了这几个组件。

Download SOAP

纵然理解 gem 实用工具,那么可以使用下边包车型客车下令安装SOAP4Tiguan和相关包。

$ gem install soap4r --include-dependencies

壹经是在Windows上行事,那么须求下载2个压缩文件,从地点的岗位,供给安装它利用规范的装置格局运营Ruby的 install.rb.
编写SOAP4R服务器:

SOAP四LAND协理二种区别类型的服务器:

  1.     CGI/FastCGI based (SOAP::RPC::CGIStub)
  2.     Standalone (SOAP::RPC:StandaloneServer)

本学科将详细编写制定一个独门的服务器。涉及编写制定SOAP服务器有以下步骤:
第1步 - 继承SOAP::RPC::StandaloneServer 类:

要落实协和的单身服务器,要求编制3个新类,那将SOAP::StandaloneServer 类的子类,如下:

复制代码 代码如下:class MyServer < SOAP::RPC::StandaloneServer
  ...............
end

注意:若是想编写一个基于法斯特CGI的服务器,那么需要持续SOAP::RPC::CGIStub 类, 别的步骤将保险同等。
第三步 - 定义管理程序方法:

其次步是编写Web服务方法,希望向外面公开。

它们得以写成轻松的Ruby方法。举个例子,让大家写了三个多个八个数相加,四个数相除的不二等秘书籍:

class MyServer < SOAP::RPC::StandaloneServer
  ...............

  # Handler methods
  def add(a, b)
   return a   b
  end
  def div(a, b) 
   return a / b 
  end
end

第二步 - 揭露管理程序方法:

下一步是大家定义的主意增加到大家的服务器。 initialize方法用于揭示服务的法门,用以下两种办法之一:

class MyServer < SOAP::RPC::StandaloneServer
  def initialize(*args)
   add_method(receiver, methodName, *paramArg)
  end
end

下边包车型客车参数表达:

mg4377娱乐手机版 1

 To understand the usage of inout or out parameters, consider the following service method that takes two parameters (inParam and inoutParam), returns one normal return value (retVal) and two further parameters: inoutParam and outParam:

def aMeth(inParam, inoutParam)
  retVal = inParam   inoutParam
  outParam = inParam . inoutParam
  inoutParam = inParam * inoutParam
  return retVal, inoutParam, outParam
end

当今,大家能够公开那几个点子如下:

add_method(self, 'aMeth', [
  %w(in inParam),
  %w(inout inoutParam),
  %w(out outParam),
  %w(retval return)
])

第5步 - 运转服务器:

末段一步是通过实例的派生类的三个实例,并调用start方法来运转服务器。

myServer = MyServer.new('ServerName',
            'urn:ruby:ServiceName', hostname, port)

myServer.start

那是必备的参数的描述:

mg4377娱乐手机版 2

  例如:

如今选用上述手续,让大家写贰个独门的服务器:

require "soap/rpc/standaloneserver"

begin
  class MyServer < SOAP::RPC::StandaloneServer

   # Expose our services
   def initialize(*args)
     add_method(self, 'add', 'a', 'b')
     add_method(self, 'div', 'a', 'b')
   end

   # Handler methods
   def add(a, b)
     return a   b
   end
   def div(a, b) 
     return a / b 
   end
 end
 server = MyServer.new("MyServer", 
      'urn:ruby:calculation', 'localhost', 8080)
 trap('INT){
   server.shutdown
 }
 server.start
rescue => err
 puts err.message
end

试行时,服务器应用程序开头三个单身的SOAP服务在localhost上侦听8080端口的呼吁。它暴光了3个劳务方法:add 和 div ,那亟需四个参数并重回结果。

今天能够运转这几个服务器后台如下:

$ ruby MyServer.rb&

编写SOAP4R客户端:

SOAP::RPC::Driver 类用于写入SOAP客户端应用程序提供支持。本课程将介绍那一个类,展现其使用的应用程序的根基。

以下是最低供给的音信,需求调用SOAP服务:

  •     SOAP服务(SOAP端点URL)
  •     service方法(方法命名空间UQX56I)
  •     service方法的名号及其参数

明日大家将编写制定3个SOAP客户端调用服务概念的措施在上边的事例名为add和div。

以下是入眼的步子来创立叁个SOAP客户端:
步骤壹 - 创立贰个SOAP驱动程序实例:

咱俩创设3个实例 SOAP::RPC::Driver 通过调用 new 方法如下:

SOAP::RPC::Driver.new(endPoint, nameSpace, soapAction)

mg4377娱乐手机版:动用Ruby的SOAP肆昂科拉编写SOAP服务器的教程,使用Ruby编写脚本实行系统管理的学科。那是要求的参数的讲述:

mg4377娱乐手机版 3

 第二步 - 加多服务的方法:

要增多到SOAP SOAP服务方法到 SOAP::RPC::Driver 我们得以调用下边包车型客车主意运用 SOAP::RPC::Driver 实例:

driver.add_method(name, *paramArg)

下边包车型地铁参数表明:

mg4377娱乐手机版 4

 第3步 - 调用SOAP服务:

最终一步是调用SOAP服务应用 SOAP::RPC::Driver 实举个例子下:

result = driver.serviceMethod(paramArg...)

此处serviceMethod是实际上的Web服务格局和paramArg...是列表参数须求经过在劳动方法。
例如:

依照上述步骤,我们将编辑三个SOAP客户端如下:

#!/usr/bin/ruby -w

require 'soap/rpc/driver'

NAMESPACE = 'urn:ruby:calculation'
URL = 'http://localhost:8080/'

begin
  driver = SOAP::RPC::Driver.new(URL, NAMESPACE)

  # Add remote sevice methods
  driver.add_method('add', 'a', 'b')

  # Call remote service methods
  puts driver.add(20, 30)
rescue => err
  puts err.message
end

什么是SOAP 轻巧对象访问协议(SOAP)是一个跨平台和言语无关的,基于XML的RPC协议,...

简介

简轻易单对象访问协议(SOAP)是一个跨平台和言语非亲非故的,基于XML的RPC协议,经常(但不自然)是HTTP。

 

Ruby 是壹种意义特别足够的、无偿的、轻松的、可扩充的、可移植的、面向对象的台本编制程序语言。近期,它在 Web 领域广受接待。那在早晚水准上要归因于那一个有力的 Web 应用程序开拓框架 Rails,Rails 正是用 Ruby 编写的。Rails,也称 Ruby on Rails(RO瑞虎),从名称想到所包含的意义,它为高速、有效地开拓 Web 应用程序提供一个特别有力的阳台。它是惊人可伸缩的,Web 上有好些个站点就是用 Ruby on Rails 创设的。

它选用XML来编码音信使长途进度调用,HTTP在互联网上从客户机到服务器来传输新闻,反之亦然。

什么是 SOAP?

  • SOAP 指粗略对象访问协议
  • SOAP 是一种通信协议
  • SOAP 用于应用程序之间的通信
  • SOAP 是一种用于发送新闻的格式
  • SOAP 被设计用来透过因特网拓展通讯
  • SOAP 单独于阳台
  • SOAP 单身于言语
  • SOAP 基于 XML
  • SOAP 很简短并可扩充
  • SOAP 允许您绕过防火墙
  • SOAP 将被当做 W3C 标准来发展

除此之外与 Rails 一齐作为 Web 应用程序开垦平台外,Ruby 还持有较少被提起的另一面,那正是当做1种壮大的剧本编制程序语言,就像是 Python 或 Perl 那样。它具备特别有力的效能,由于能够利用过多内建的和表面包车型客车库,由此可采取它的威力来消除一般系统管理职业遭受中出现的众多脚本编制程序须求。

SOAP有多少个优势超越任何技能,如COM,CORBA等为例,其相对廉价的配备和调度开销,它的可增加性和易于使用,存在三种不相同的言语和平台达成。

Why SOAP?

对于应用程序开辟以来,使程序之间实行因特网通讯是很注重的。

当下的应用程序通过动用远程进度调用(RPC)在例如 DCOM 与 CORBA 等目的之间举行通讯,不过 HTTP 不是为此规划的。RPC 会发生包容性以及安全难题;防火墙和代理服务器平常会阻止此类流量。

经过 HTTP 在应用程序间通讯是更加好的格局,因为 HTTP 得到了独具的因特网浏览器及服务器的支撑。SOAP 正是被创建出来完毕那一个任务的。

SOAP 提供了壹种规范的章程,使得运营在差异的操作系统并行使区别的工夫和编制程序语言的应用程序能够并行开始展览通讯。

系统管理要求大批量编辑脚本以使事情更简约、更管用。编写脚本比单调的手动工作能越来越好地消除用户管理、进度管理、文件管理、软件包管理和其他大旨的自动化供给。在这一个地方中,Ruby 非常实用。它有壹套很好的库可满意那一点。

请参阅出差没多少的课程精通 SOAP

Microsoft 和 SOAP

SOAP 是微软 .net 架构的最主要要素,用于今后的因特网应用程序开荒。

对于本文,笔者只要读者具备 Ruby 的选择知识。这里提供的主干例子使用纯 Ruby,因此得以在 Ruby 帮忙的别样类 UNIX? 系统以及 Windows? 上运营。对于越来越高等的 Cfruby 例子,须要能够选拔2个 UNIX 系统。上面全体的事例已经在1台 Linux? 机器上应用 Ruby v壹.捌.四进行了测试。它们应该也能用于新型版本的 Ruby。

本课程将熟知SOAP实现Ruby(SOAP四RAV4)。那是3个骨干的学科,所以借使急需深远细节,那么必要参谋别的能源。
安装SOAP4R:

SOAP 营造立模型块

一条 SOAP 音讯就是2个平常的 XML 文书档案,包蕴下列成分:

  • 必备的 Envelope 成分,可把此 XML 文书档案标志为一条 SOAP 信息
  • 可选的 Header 元素,包括尾部音信
  • 必备的 Body 成分,包括全体的调用和响应消息
  • 可选的 Fault 成分,提供关于在拍卖此新闻所爆发错误的音讯

具备以上的因素均被声称于针对 SOAP 封装的暗中认可命名空间中:

以及针对性 SOAP 编码和数据类型的私下认可命名空间:

执行中的 Ruby

SOAP4Koleos是由Hiroshi Nakamura编定,能够直接从英特网下载Ruby的开垦的SOAP实现:

语法规则

这边是有个别首要的语法规则:

  • SOAP 音讯必须用 XML 来编码
  • SOAP 音信必须利用 SOAP Envelope 命名空间
  • SOAP 新闻必须运用 SOAP Encoding 命名空间
  • SOAP 音讯无法包蕴 DTD 引用
  • SOAP 新闻不可能包括 XML 处理指令

先是个例子在钦赐路径中找找符合给定方式的文书,并以用户自个儿的格局提交关于这几个文件的详细新闻。实现这一目的不必借助于于别的命令行实用程序,只需使用 Ruby 内建的 API。因而,那几个事例在有 Ruby 运转的任何平台上都能运作。

留意:有非常的大可能率曾经设置了那几个组件。

SOAP 新闻的基本结构

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Header>
  ...
  ...
</soap:Header>

<soap:Body>
  ...
  ...
  <soap:Fault>
    ...
    ...
  </soap:Fault>
</soap:Body>

</soap:Envelope>

再者,那个事例浮现了 Ruby 在简化脚本编写需要方面有多庞大。它不是大致地模拟 *nix "find" 命令,而是创设在该命令之上,由此在运用 Ruby 时持有很强的定制工夫。
清单 一. 在加以路线中寻找符合给定方式的形式的文书,并展现它们的详细消息

Download SOAP

SOAP Header 元素

可选的 SOAP Header 成分可含蓄关于 SOAP 信息的应用程序专项使用音讯(比方认证、支付等)。要是 Header 成分被提供,则它必须是 Envelope 元素的率先个子成分。

解说:全数 Header 元素的第二手子成分必须是合格的命名空间。

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Header>
<m:Trans
xmlns:m="http://www.w3school.com.cn/transaction/"
soap:mustUnderstand="1">234</m:Trans>
</soap:Header>

...
...

</soap:Envelope>

上边的事例包罗了一个富含三个 "Trans" 元素的头顶,它的值是 234,此成分的 "mustUnderstand" 属性的值是 "一"。

SOAP 在暗许的命名空间中 ("") 定义了八个属性。那二日本性是:actor、 mustUnderstand 以及 encodingStyle。这个被定义在 SOAP 尾部的天性可定义容器怎样对 SOAP 音信进行拍卖。

require 'find'
puts ""
puts "-----------------------File Search-----------------------------------"
puts ""
print "Enter the search path  : "
searchpath = gets
searchpath = searchpath.chomp
puts ""
print "Enter the search pattern : "
pattern = gets
pattern = pattern.chomp
puts"----------------------------------------------------------------------"
puts "Searching in "   searchpath   " for files matching pattern "   pattern
puts"----------------------------------------------------------------------"
puts ""
 Find.find(searchpath) do |path|
  if FileTest.directory?(path)
   if File.basename(path)[0] == ?.
    Find.prune    # Don't look any further into this directory.
   else
    next
   end
  else
   if File.fnmatch(pattern,File.basename(path))
    puts "Filename   : "   File.basename(path)
    s = sprintf("%o",File.stat(path).mode)
    print "Permissions : "
    puts s
    print "Owning uid  : "
    puts File.stat(path).uid
    print "Owning gid  : "
    puts File.stat(path).uid
    print "Size (bytes) : "
    puts File.stat(path).size
    puts "---------------------------------------------------"
   end
  end
 end

假诺驾驭 gem 实用工具,那么能够行使下边包车型地铁指令安装SOAP四RAV4和相关包。

actor 属性

透过沿着音讯路线经过分裂的端点,SOAP 新闻可从某些发送者传播到有个别接收者。并非 SOAP 音讯的保有片段均策动传送到 SOAP 信息的终极端点,然则,另叁个地点,可能筹算传送给音讯路线上的一个或四个端点。

SOAP 的 actor 属性可被用来将 Header 元素寻址到叁个一定的端点。

在那几个事例中:

$ gem install soap4r --include-dependencies

语法

soap:actor="URI" 
  •     第 5-1一 行 - 请求用户提供搜索路线和搜索格局。
  •     第 16 行 - 使用 Ruby 中 “Find” 类中的 “find” 方法遍历钦赐的检索路线。
  •     第 壹七 行 - 检查开采的文书是或不是为一个索引。若是是目录,并且不是 “.”,则递归地遍历该目录。
  •     第 2四 行 - 使用 “File” 类中的 “fnmatch” 方法检查发掘的公文是还是不是符合给定的方式。
  •     第 25-3四 行 - 固然文件符合形式,则打字与印刷文件的详细新闻。

假如是在Windows上行事,那么必要下载多个压缩文件,从地点的职责,要求设置它选择职业的安装方式运行Ruby的 install.rb.
编写SOAP4R服务器:

实例

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Header>
<m:Trans
xmlns:m="http://www.w3school.com.cn/transaction/"
soap:actor="http://www.w3school.com.cn/appml/">
234
</m:Trans>
</soap:Header>

...
...

</soap:Envelope>

上面是这几个本子的3个演示输出。
清单 二. 率先个例子的言传身教输出

SOAP4中华V支持两种不相同类型的服务器:

mustUnderstand 属性

SOAP 的 mustUnderstand 属性可用于标记标题项对于要对其举办拍卖的收信人来讲是挟持的照旧可选的。

若是你向 Header 成分的某部子成分加多了 "mustUnderstand="一",则它可提醒处理此底部的接收者必须认同此因素。如若此接收者非常小概料定此因素,则在拍卖此尾部时必须失效。

[root@logan]# ruby findexample.rb

-----------------------File Search-----------------------------------

Enter the search path  : /test

Enter the search pattern : *.rb
----------------------------------------------------------------------
Searching in /test for files matching pattern *.rb
----------------------------------------------------------------------

Filename   : s.rb
Permissions : 100644
Owning uid  : 1
Owning gid  : 1
Size (bytes) : 57
---------------------------------------------------
Filename   : test.rb
Permissions : 100644
Owning uid  : 0
Owning gid  : 0
Size (bytes) : 996
---------------------------------------------------
Filename   : s1.rb
Permissions : 100644
Owning uid  : 1
Owning gid  : 1
Size (bytes) : 39
---------------------------------------------------
  1.     CGI/FastCGI based (SOAP::RPC::CGIStub)
  2.     Standalone (SOAP::RPC:StandaloneServer)

语法

soap:mustUnderstand="0|1"

在系统管理时期,最广泛的二个要求是卓有成效地选拔 zip 文件来保管备份,只怕将一组文件从1台Computer转移到另壹台微型Computer。在这么些地点,Ruby 很有优势。这里的第叁个例子创设在率先个例证的基本功上,可是包蕴了2个光景,在此场景中,供给将搜索到的文书打包到 zip 文件中。

本课程将详细编写制定三个单独的服务器。涉及编写制定SOAP服务器有以下步骤:
第1步 - 继承SOAP::RPC::StandaloneServer 类:

实例

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Header>
<m:Trans
xmlns:m="http://www.w3school.com.cn/transaction/"
soap:mustUnderstand="1">
234
</m:Trans>
</soap:Header>

...
...

</soap:Envelope>

内建的 zlib 模块可帮助处理 gzip 文件,对于大多景观它都够好。不过,在此处我将选择另三个很好的 Ruby 库,即 “rubyzip”,来创设和管理 zip 归档文件。请查看 参考资料 小节,找到下载它的链接。而且要小心,这一个事例使用纯 Ruby,它不正视于计算机上脚下提供的其他命令行实用程序。

要贯彻团结的单身服务器,要求编写制定二个新类,那将SOAP::StandaloneServer 类的子类,如下:

SOAP Body 元素

必备的 SOAP Body 成分可含蓄筹划传送到音讯最后端点的莫过于 SOAP 音讯。

SOAP Body 成分的第2手子成分可以是合格的命名空间。SOAP 在暗中认可的命名空间中(" Body 成分内部的2个因素。即 SOAP 的 Fault 元素,用于提醒错误音信。

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Body>
   <m:GetPrice xmlns:m="http://www.w3school.com.cn/prices">
      <m:Item>Apples</m:Item>
   </m:GetPrice>
</soap:Body>

</soap:Envelope>

上边的例子请求苹果的价位。请留心,下面的 m:GetPrice 和 Item 成分是应用程序专项使用的因素。它们并不是 SOAP 标准的1有的。

而一个 SOAP 响应应该临近那样:

<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:Body>
   <m:GetPriceResponse xmlns:m="http://www.w3school.com.cn/prices">
      <m:Price>1.90</m:Price>
   </m:GetPriceResponse>
</soap:Body>

</soap:Envelope>

安装 rubyzip

复制代码 代码如下:

SOAP Fault 元素

可选的 SOAP Fault 成分用于指示错误音讯。

假定已提供了 Fault 成分,则它必须是 Body 成分的子成分。在一条 SOAP 音讯中,Fault 成分只可以现身三次。

SOAP 的 Fault 成分具备下列子成分:

子元素 描述
<faultcode> 供识别故障的代码
<faultstring> 可供人阅读的有关故障的说明
<faultactor> 有关是谁引发故障的信息
<detail> 存留涉及 Body 元素的应用程序专用错误信息

    通过提供的链接下载 “rubyzip” gem,并将它复制到系统中。(在编写本文之际,它的文件名是 “rubyzip-0.玖.壹.gem”)。
    运行 gem 安装 rubyzip-0.9.1.gem

class MyServer < SOAP::RPC::StandaloneServer
  ...............
end

SOAP Fault 代码

在底下定义的 faultcode 值必须用于描述不当时的 faultcode 成分中:

错误 描述
VersionMismatch SOAP Envelope 元素的无效命名空间被发现
MustUnderstand Header 元素的一个直接子元素(带有设置为 "1" 的 mustUnderstand 属性)无法被理解。
Client 消息被不正确地构成,或包含了不正确的信息。
Server 服务器有问题,因此无法处理进行下去。

 

清单 3. 使用 zip 文件

在意:要是想编写3个基于法斯特CGI的服务器,那么必要继续SOAP::RPC::CGIStub 类, 别的步骤将保险同样。
第3步 - 定义管理程序方法:

HTTP 协议

HTTP 在 TCP/IP 之上进行通讯。HTTP 客户机使用 TCP 连接到 HTTP 服务器。在确立连接之后,客户机可向服务器发送 HTTP 请求音讯:

POST /item HTTP/1.1
Host: 189.123.345.239
Content-Type: text/plain
Content-Length: 200

继之服务器会处理此呼吁,然后向客户机发送贰个 HTTP 响应。此响应包括了可提醒请求状态的情事代码:

200 OK
Content-Type: text/plain
Content-Length: 200

在地方的例证中,服务器重回了叁个 200 的情形代码。那是 HTTP 的正统成功代码。

比如服务器不可能对请求举办解码,它只怕会回来类似这样的音讯:

400 Bad Request
Content-Length: 0
require 'rubygems'
require_gem 'rubyzip'
require 'find'
require 'zip/zip'

puts ""
puts "------------------File Search and Zip-----------------------------"
puts ""
print "Enter the search path  : "
searchpath = gets
searchpath = searchpath.chomp
puts ""
print "Enter the search pattern : "
pattern = gets
pattern = pattern.chomp
puts"----------------------------------------------------------------------"
puts "Searching in "   searchpath   " for files matching pattern "   pattern
puts"----------------------------------------------------------------------"
puts ""
puts"----------------------------------------------------------------------"
puts "Zipping up the found files..."
puts"----------------------------------------------------------------------"
 Zip::ZipFile.open("test.zip", Zip::ZipFile::CREATE) {
 |zipfile|
 Find.find(searchpath) do |path|
 if FileTest.directory?(path)
   if File.basename(path)[0] == ?.
    Find.prune    # Don't look any further into this directory.
   else
    next
   end
  else
    if File.fnmatch(pattern,File.basename(path))
        p File.basename(path)
        zipfile.add(File.basename(path),path)
    end
  end
 end
 }

第二步是编写Web服务章程,希望向外界公开。

SOAP HTTP Binding

SOAP 方法指的是依据 SOAP 编码规则的 HTTP 请求/响应。

HTTP XML = SOAP

SOAP 请求恐怕是 HTTP POST 或 HTTP GET 请求。

HTTP POST 请求规定至少七个 HTTP 头:Content-Type 和 Content-Length。

其1本子为基于提供的搜寻路线和搜索方式寻觅到的文件创立一个名叫“test.zip” 的 zip 文件。

编辑:mg4377娱乐手机版 本文来源:mg4377娱乐手机版:动用Ruby的SOAP肆昂科拉编写SO

关键词: 转载