3

错误:未找到传输,或尚不支持所选传输!

当我调用网络服务时,会发生此错误。

这是我的代码:

include("lib/bankmellat/nusoap.php");
$client = new \bankmellat\nusoap_client('https://pgwstest.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl');
$namespace = 'http://interfaces.core.sw.bps.com/';
$parameters = array();
$parameters['terminalId'] = $terminalId;
$parameters['userName'] = $userName;
.
.
.
$result = $client->call('bpPayRequest', $parameters , $namespace);
echo '<h2>Error!!</h2><pre>' . $client->getError(); . '</pre>';

Ubuntu 12.04

阿帕奇2

PHP 5.3.10

在 php 上启用 cURL - 版本:7.21.3

cURL 支持的协议:dict、file、ftp、ftps、gopher、http、https、imap、imaps、ldap、ldaps、pop3、pop3s、rtsp、smtp、smtps、telnet、tftp

我必须说我在其他具有几乎相似资格的服务器上实现了此代码,并且它们仍在工作!

请帮助解决这个问题..伙计们!谢谢。

4

2 回答 2

4

终于我发现了我的问题!主要问题是php版本(5.3.10)!

根据关于构造函数的 php 手册

从 PHP 5.3.3 开始,与命名空间类名的最后一个元素同名的方法将不再被视为构造函数。此更改不会影响非命名空间类。

所以我将 nusoap_client 类中的nusoap_client(旧的构造函数样式)函数更改为__construct并修复了问题!

现在我遇到了另一个错误并正在努力修复它:

wsdl 错误:获取https://pgws.bpm.blabla.ir/pgwchannel/services/pgw?wsdl - HTTP 错误:未知方案

于 2013-01-08T04:59:44.230 回答
1

使用命名空间时,旧的 php OOP (php4) 构造不会自动运行。将 __construct 方法添加到所有类。在新的 __construct 方法中调用旧构造之后。

或使用这个编辑过的文件 > nusoap_client.php

于 2015-10-28T17:49:07.337 回答