gpt4 book ai didi

php - 连接到密码保护目录中的 SOAP API 时出现问题

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:56:59 24 4
gpt4 key购买 nike

我正在尝试使用 SOAP 访问 Magento API。我的代码正常工作,但客户希望密码保护 Magento 主文件夹。这样做会中断对 API 的访问并导致错误。

文档表明这不是问题,您可以只指定用户名/密码,但这不起作用。

我正在使用 PHP 和 IIS,并通过 Plesk 10 设置了密码保护。这是使用基本 HTTP 身份验证还是其他方式?

我的访问代码是:

$client = new SoapAuthClient($GLOBALS["magento_api_path"],array(  

'login'=>"admin",
'password'=>"password"
)
);
$session = $client->login($GLOBALS["magento_api_user"], $GLOABLS["magento_api_password"] ,
array(

'login'=>"admin",
'password'=>"password"
) );

我得到的错误是:

Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://www.domain.co.uk/magento/index.php/api/index/index/wsdl/1/' : failed to load external entity "http://www.domain.co.uk/magento/index.php/api/index/index/wsdl/1/" in C:\Inetpub\vhosts\domain.co.uk\httpdocs\backend\index.php:20 Stack trace: #0 C:\Inetpub\vhosts\domain.co.uk\httpdocs\backend\index.php(20): SoapClient->__call('login', Array) #1 C:\Inetpub\vhosts\domain.co.uk\httpdocs\backend\index.php(20): SoapClient->login('backenduser', 'backendwebuser', Array) #2 {main} thrown in C:\Inetpub\vhosts\domain.co.uk\httpdocs\backend\index.php on line 20

引用的行是 $client->login 命令。

有什么建议吗?

最佳答案

很久以前我遇到过类似的问题。

在我的例子中,我没有立即意识到在创建 SoapClient 实例时需要使用 .htaccess 凭据,而是将 SOAP API 凭据传递给 登录方法。

我一直在传递 SOAP API 凭据,但遇到了与您类似的错误。

以下是对我有用的方法(虽然是 1.3.x 版本。到今天仍然对我有用):

$cProxy = new SoapClient(
URL . 'index.php/api/soap/?wsdl',
array(
'login' => HTACCESS_USER,
'password' => HTACCESS_PASS
)
);
$rSessionId = $cProxy->login(
SOAP_USER,
SOAP_PASS
);

只是为了保存,你没有被打字错误困住:你将 $GLOABLS["magento_api_password"] 作为 login 方法的第二个参数,应该是 $GLOBALS["magento_api_password"]

最后,您将第三个参数传递给 login 方法,我认为该方法已过时,因为 afaik 它被定义为只有两个参数:

<message name="login">
<part name="username" type="xsd:string" />
<part name="apiKey" type="xsd:string" />
</message>

关于php - 连接到密码保护目录中的 SOAP API 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7436069/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com