使用适当的身份验证通过pythonzeep调用BMC补救SOAP WSDL

2024-09-30 16:27:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我接到了一个任务,调用soapwsdl数据以实现Python中的BMC补救。 我只有PHP代码片段供参考。在

我有以下问题, 1: 我不知道通过Python和手动(比如通过SOAP UI)在新的\u GetList_Operation_0方法中传递数据的确切格式,因为我以前只处理json REST api 2: 我随机尝试了下面的python代码,但是我得到了下面的错误: ARERR[149]必须在控制记录中提供用户名

请求协助解决上述两个问题。在

PHP代码:

public function getRemedyData($params) {
    $client     = new SoapClient($this->_Wsdl, $this->soapOptions);
    $authvalues = new SoapVar($this->_bmcAuth, SOAP_ENC_OBJECT);
    $header     = new SoapHeader("New_GetList_Operation_0", "AuthenticationInfo", $authvalues, false);
    $client->__setSoapHeaders(array($header));
    try {
        $result                = $client->__soapCall("New_GetList_Operation_0", array($params));
        $resultArray           = array('code' => "0", 'message' => "successful");
        $resultArray["result"] = $result;
    } catch (Exception $e) {
        $errMsg = $e->getMessage();

        $resultArray = array('code' => "1", 'message' => $errMsg);
    }
    return $resultArray;
}

$params = array(
    'Qualification' => '\'Modified Date\' >= "' . $dateTimeValue . '" and \'Categorization Tier 2\' = "<<xx Scan>>" and \'Submitter\' = "validusername"'
);
$result = $this->Remedy->getRemedyData($params);

Python代码:

^{pr2}$

Tags: 代码clientnewparamsresultthisarrayoperation