当前位置: 首页 > 知识库问答 >
问题:

带有参数的asmx HTTP Post请求

南宫勇军
2023-03-14

我们公司有一个基于.NET的网站
几天前,我们向网站程序员请求一个webservice。昨天他给了我一个URL
当我从localhost打开URL时,它显示了一个页面,我可以从我们请求编程的四个方法(函数)中选择一个。
通过选择其中一个,一个新的页面显示如下:

SOAP 1.1
以下是SOAP 1.1请求和响应示例。显示的占位符需要用实际值替换。

POST/webservices/findstatus.asmx http/1.1 host:localhost
内容类型:text/xml;charset=utf-8 content-length:length
SOAPAction:“http://tempuri.org/findwith_coder_serail”

<?xml version="1.0" encoding="utf-8"?>  
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">  
  <soap:Body>  
    <FindWith_CodeR_Serail xmlns="http://tempuri.org/">  
      <CodeReception>int</CodeReception>  
      <Serial>string</Serial>  
    </FindWith_CodeR_Serail>  
  </soap:Body>  
</soap:Envelope>  
<?xml version="1.0" encoding="utf-8"?>  
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">  
  <soap:Body>  
    <FindWith_CodeR_SerailResponse xmlns="http://tempuri.org/">  
      <FindWith_CodeR_SerailResult>string</FindWith_CodeR_SerailResult>  
    </FindWith_CodeR_SerailResponse>  
  </soap:Body>  
</soap:Envelope> 

SOAP 1.2
以下是SOAP 1.2请求和响应示例。显示的占位符需要用实际值替换。

POST/webservices/findstatus.asmx http/1.1 host:localhost
内容类型:application/soap+xml;charset=utf-8 content-length:长度

<?xml version="1.0" encoding="utf-8"?>  
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">  
  <soap12:Body>  
    <FindWith_CodeR_Serail xmlns="http://tempuri.org/">  
      <CodeReception>int</CodeReception>  
      <Serial>string</Serial>  
    </FindWith_CodeR_Serail>  
  </soap12:Body>  
</soap12:Envelope>  

HTTP/1.1 200 OK内容类型:Application/SOAP+XML;charset=utf-8
content-length:长度

<?xml version="1.0" encoding="utf-8"?>  
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">  
  <soap12:Body>  
    <FindWith_CodeR_SerailResponse xmlns="http://tempuri.org/">  
      <FindWith_CodeR_SerailResult>string</FindWith_CodeR_SerailResult>  
    </FindWith_CodeR_SerailResponse>  
  </soap12:Body>  
</soap12:Envelope> 
<?xml version="1.0" encoding="utf-8"?>  
<string xmlns="http://tempuri.org/">string</string>  

我使用了这段php代码,所有的事情都没问题:

<?php

$client = new SoapClient("http://www.MyWebSite.com/webservices/findstatus.asmx?WSDL");
$params=new stdClass();
$params->CodeReception = '11111';
$params->Serial = '22222222';    
$result = $client->FindWith_CodeR_Serail($params)->FindWith_CodeR_SerailResult;
echo  $result;
?>

共有1个答案

王英彦
2023-03-14
<?php

$client = new SoapClient("http://www.MyWebSite.com/webservices/findstatus.asmx?WSDL");
$params=new stdClass();
$params->CodeReception = '11111';
$params->Serial = '22222222';    
$result = $client->FindWith_CodeR_Serail($params)->FindWith_CodeR_SerailResult;
echo  $result;
?>
 类似资料:
  • 问题内容: 在swift 3中建议使用带参数的GET的哪种方法? 范例: 提前致谢 ! 问题答案: 示例如何使用请求。

  • 我是REST API和JSON的新手,我有一个初学者的问题。我试图使用的API根据以下模式请求参数: 请求参数示例如下: 但是,当我试图使用SoapUI和Postman测试这个API时,我只看到参数的键值对,我不知道如何在病人对象中嵌套ID和类型: SoapUI参数 邮递员参数

  • 问题内容: 这是对API调用的原始请求: 该请求返回成功(2xx)响应。 现在,我尝试使用发送此请求: 一切对我来说看起来不错,我不太确定自己张贴的错误是什么导致400响应。 问题答案: 用于GET样式的URL参数,用于POST样式的正文信息。在请求中 同时 提供 两种 类型的信息是完全合法的,您的请求也可以这样做,但是您已经将URL参数编码为URL。 您的原始帖子虽然包含 JSON 数据。可以为

  • 问题内容: 我是新手,所以我的代码可能会出现很多错误,但是我要实现的目标是将GET请求发送到带有 参数的服务器。鉴于我的函数有两个参数,我试图做到更多。我不确定如何将两者结合到实际的URLRequest中?到目前为止,这是我尝试过的 问题答案: 建立请求时,请求的主体没有,但是所有内容都放在URL上。要构建网址(并正确地将其转义), 您还可以使用. 唯一的窍门是,大多数Web服务都需要+转义字符百

  • 您好,我想使用截取标题和正文参数向服务器发送删除请求。但我无法成功发送请求 我试过的 这是我的截击请求课 当我尝试此代码时,我收到400响应代码错误。如果有人可以帮助我,请告诉我。。这就是我做错的地方。谢谢 这里是我测试的deleteapi的屏幕截图,它工作正常。

  • 我正在使用Alamofire4和Swift3构建一个网络堆栈。根据Alamofire指南,我为服务的endpoint创建了一个路由器。我目前正在使用OpenWeatherMap的免费API,但我发现创建get请求时存在问题。这就是所需的url:http://api.openweatherap.org/data/2.5/weather?q=rome&appid=my_api_key。粘贴在浏览器上,