0

我打电话给 curl 来注册客户,在有效负载中我提供了一个包含客户手机号码的 xml 文件,以及如下密码:

 <userAccount>
        <mobile>01733156102</mobile>
        <password>geheim01</password>
    </userAccount>

curl 调用看起来是这样的:

curl -k -X POST -u qqcdi3:j5tmajpc -H "Content-Type: application/xml" -d @CDP_Reg_min_phone.xml https://c2b-i.natura.net/api/v3/clients/cdp/fr_FR/customers

curl 调用在命令行上运行良好,作为响应,我得到一个这样的 json enry,这是正确的:

{"userAccount":{"mobile":"01733156102","notificationLevel":"NEW_DEVICE","authenticationLevel":"ONE_FACTOR","gcid":"cfe71e26-c1bc-40d8-8bac-a9abca4b9316","secret
KnowledgeActivated":false,"status":"UNCONFIRMED"}}

但是在 Loadrunner 上,它没有给出正确的响应,而不是我得到这样的响应:

 912-byte response body for "https://c2b-i.natura.net/api/v3/clients/cdp/fr_FR/customers" (RelFrameId=1, Internal ID=1)
Action.c(42):     <HTML><HEAD><TITLE></TITLE></HEAD><BODY onLoad="document.AUTOSUBMIT.submit();">This page i
Action.c(42):     s used to hold your data while you are being authorized for your request.<BR><BR>You will 
Action.c(42):     be forwarded to continue the authorization process. If this does not happen automatically,
Action.c(42):      please click the Continue button below.<FORM NAME="AUTOSUBMIT" METHOD="POST" ENCTYPE="app
Action.c(42):     lication/x-www-form-urlencoded" ACTION="https://c2b-i.bmwgroup.net/siteminderagent/forms/l
Action.c(42):     ogin.fcc?TYPE=33619969&REALMOID=06-2b2683bb-229b-491a-a393-d4f82eb82804&GUID=&SMAUTHREASON
Action.c(42):     =0&METHOD=POST&SMAGENTNAME=-SM-Mq1XdSJKL8NdvBmymBJHpO%2bGYaqCW67pMeCPFiqK1zRIp6t8lJaHA1Bjh
Action.c(42):     uK0SeOx&TARGET=-SM-https%3a%2f%2fc2b--i%2ebmwgroup%2enet%2fapi%2fv3%2fclients%2fcdp%2fde_D
Action.c(42):     E%2fcustomers"><INPUT TYPE="HIDDEN" NAME="SMPostPreserve" VALUE="utfbo50P0fYWJGOGRvcDGWyPW
Action.c(42):     loukE/tB1kOHP4h5tO/44uQ8EOErF6IdeqiBLyP"><INPUT TYPE="SUBMIT" VALUE="Continue"></FORM></BO
Action.c(42):     DY></HTML>\r\n

我对 loadrunner 的调用如下所示:

web_custom_request("post_to_http_jms_provider",
                     "URL={URL_Param}", // save rest service url to param
                        "Method=POST",
                        "TargetFrame=",
                           "Resource=0",
                           "Referer=",
                           "EncType=text/xml; charset=utf-8",//here because the payload is an xml file
                           "Mode=HTTP",
                         "Body={REQUEST_XML_PARAM}",// // save xml request to param
                            LAST);

并且正文的 xml 内容看起来是这样的:

"<?xml version=\"1.0\" encoding=\"UTF-8\"?>"

"<newCustomer xmlns:enh=\"http://natura.com/gcdm/controller/v3/model\" xmlns:bupa=\"http://natura.com/gcdm/controller/v3/model/businessPartner\" xmlns:cr=\"http://natura.com/gcdm/controller/v3/model/campaignResponse\" xmlns:deal=\"http://natura.com/gcdm/controller/v3/model\" xmlns:cupr=\"http://natura.com/gcdm/controller/v3/model/businessPartner/customerProfile\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"C:/svn/c2b/gcdm-api/trunk/src/main/resources/schema/gcdm-customer-schema.xsd\">"
    "<userAccount>"
        "<mobile>01733156102</mobile>"
        "<password>geheim01</password>"
    "</userAccount>"
"</newCustomer>";

我不知道如何获取 json 响应格式

4

1 回答 1

0

使用 web_reg_save_param("JsonData","LB=","RB=","Search=Body",LAST); 并在运行时设置>首选项>设置高级选项中启用java脚本,单击选项按钮>在Web Javascript部分下,将运行Javascript代码启用为是。您需要创建一个 js 文件,如此所述。

于 2015-10-20T18:45:38.980 回答