php - SOAP Providr 登录信息?
问题描述
我用providr.io做了一些测试。我可以从站点获取信息,但是当我在本地使用提供程序生成的数据包时,我收到“999”错误
请求中没有登录信息(凭据),我应该在哪个文件中输入登录名和密码?
我的代码(使用 tutorial.php 文件):
require_once __DIR__ . '/vendor/autoload.php';
/**
* Minimal options
*/
$options = array(
\WsdlToPhp\PackageBase\AbstractSoapClientBase::WSDL_URL => 'http://www.gls-group.eu/276-I-PORTAL-WEBSERVICE/services/ParcelShopSearch/wsdl/2010_01_ParcelShopSearch.wsdl',
\WsdlToPhp\PackageBase\AbstractSoapClientBase::WSDL_TRACE => true,
\WsdlToPhp\PackageBase\AbstractSoapClientBase::WSDL_CLASSMAP => ClassMap::get(),
\WsdlToPhp\PackageBase\AbstractSoapClientBase::WSDL_LOGIN => 'mylog',
\WsdlToPhp\PackageBase\AbstractSoapClientBase::WSDL_PASSWORD => 'mypass',
);
$id = "2500686161";
/**
* Samples for Get ServiceType
*/
$get = new \ServiceType\Get($options);
/**
* Sample call for GetParcelShopById operation/method
*/
if ($get->GetParcelShopById(new \StructType\GetParcelShopByIdRequestType($id)) !== false) {
print_r($get->getResult());
} else {
print_r($get->getLastError());
}
我从浏览器得到的:
StructType\GetParcelShopByIdResponseType Object ( [ExitCode] => StructType\GLSExitCode Object ( [ErrorCode] => 999 [ErrorDscr] => ) [ParcelShop] => StructType\GLSParcelShop Object ( [ParcelShopId] => [Address] => StructType\GLSAddress Object ( [Name1] => [Street1] => [ZipCode] => [City] => [Country] => [Name2] => [Name3] => [ContactName] => [BlockNo1] => [Street2] => [BlockNo2] => [Province] => ) [Phone] => StructType\GLSPhonenumber Object ( [Country] => [Region] => [Contact] => [Extension] => ) [Mobile] => StructType\GLSPhonenumber Object ( [Country] => [Region] => [Contact] => [Extension] => ) [Fax] => StructType\GLSPhonenumber Object ( [Country] => [Region] => [Contact] => [Extension] => ) [Email] => [URL] => [GLSCoordinates] => StructType\GLSCoordinates Object ( [Latitude] => 0 [Longitude] => 0 ) [GLSWorkingDay] => ) )
我是不是忘记了什么?
解决方案
我找到了一个解决方案:
/**
* Sample call for GetParcelShopById operation/method
*/
if ($get->GetParcelShopById(new \StructType\GetParcelShopByIdRequestType("*ID*", new \StructType\GLSUserCredentials($userName = "*MyUserName*", $password = '*MyPassword*'))) !== false) {
print_r($get->getResult());
} else {
print_r($get->getLastError());
}
我们需要用您的个人信息替换的值
推荐阅读
- .net - 如何在 VS 2015 中通过 DataGridView 更新数据
- python - 多处理运行意外的代码块
- excel - Excel公式:如何用大写字母分割字符串
- json - 我想将查询存储为 JSON 对象。(错误:SELECT INTO 语句中不允许使用 FOR JSON 子句。)
- reactjs - 反应图像加载
- python - 导入包适用于一个文件,但返回另一个文件错误
- spring-boot - Spring Boot 2.0.0+ 分页、maven 和 hibernate
- freertos - Cortex M3 - Systick NVIC 禁用 - 节能 FreeRTOS
- bitmap - SDL 如何打包像素?
- aws-lambda - Lambda ARN 的默认 IAM 权限是什么?